분류 전체보기 258

Broadcast IP주소

192.168.0.255라는 IP 주소가 있다고 가정해보자. 끝 자리 255를 2진수로 표현하면 1111 11111, 16진수는 FF로 표현할 수 있다.  서브넷 마스크 혹은 CIDR 기법으로 Host ID를 찾아 낼 수 있는데, Host ID를 전부 1로 채워 넣으면 192.168.0 네트워크에서 방송 주소(Broadcast Address)로 쓰인다.  위 경우 아래와 같은 일이 벌어진다.  ...    아래 네트워크 대역 구조에서 게이트 웨이(Gateway) IP가 192.168.0.1 이라고 가정해보자. 여기서 Network ID는 192.168.0 이다.  특정 PC 한 대의 IP 주소가 192.168.0.10/24 라고 가정해보자. 이때 게이트 웨이는 192.168.0.1 이다. 네이버 IP가 ..

네트워크 2024.10.17

서브넷 마스크와 CIDR

ip주소는 크게 네트워크 아이디(Network ID), 호스트 아이디(Host ID) 두 파트로 나뉜다. 서브넷 마스크(Subnet Mask)를 기준으로 네트워크 아이디와 호스트 아이디를 나눌 수 있다. 예를들어, 192.168.0.10이라는 IP가 있을 때 각 진수로 표시하면 아래와 같다. 1) 2진수1100 0000 / 1010 1000 / 0000 0000 2) 16진수1111(F) 1111(F) / 1111 1111 / 1111 1111  3) 위 둘을 AND 연산하면 아래와 같은 값이 나온다.1100 0000 / 1010 1000 / 0000 0000 결국, 1)과 3)의 값이 동일하다는 것을 알 수 있다. 이는 주소에서 서브넷 마스크 값을 가지고 bit단위로 AND 연산을 한 것이다.   실제..

네트워크 2024.10.16

IPv4 Header 형식

L2 Frame은 구조가 단순한 반면 IP Header 부터는 복잡한 형식을 갖추고 있다.   패킷의 최대 크기를 MTU라 하며 통상 1500byte이다. 이 중 IP Header는 위 그림에서 표시된 'Option' 이 붙지 않는다면 20byte 정도된다. 이 경우 Payload 크기는 약 1480byte가 될 수 있음을 짐작할 수 있다.   하지만 위 그림의 Data 영역을 보면 최대 크기가 65,515byte 로 표시되어 있다. IP 패킷의 크기가 64k까지도 될 수 있지만 실제로는 그렇지 않고 MTU에 맞춰 운영이 된다. (늘어나는 사례가 있다.)  위 그림을 보면 32bit 단위로 데이터를 끊은 것이다. 8bit = 1byte 이다. 그리고 8bit = 4bit + 4bit의 조합인데, 4bit..

네트워크 2024.10.14

TCP/IP 송수신 구조

파리에서 에펠탑을 택배로 보내려면 어떻게 해야 할까, 먼저 에펠탑을 분해하여 크기를 줄이고, 상자에 담아야 할 것이다. 그리고 이를 운송한 후 조립해야 한다. 이를 네트워크에 비유하자면 조립은 수신 측에서, 분해는 수신 측에서 할 것이다. 그리고 상자는 패킷으로 비유해 볼 수 있다.  이를 바탕으로 네트워크 통신 구조를 그려보면 아래 그림과 같다.    서버측에 있는 1.4 MB 크기의 파일을 다운로드 받는다고 가정해보자.  TCP/IP 형식이기 때문에 서버와 클라이언트 간 연결(TCP)이 이루어진 다음 송수신(IP)이 이루어진다. 이 때 인터넷 구간에서는 패킷 단위로 전송되며 보통 패킷의 MTU는 1.4KB이다.   위 예시에서 다운로드 받는 파일의 크기 (1.4 MB)는 패킷의 MTU (1.4KB)보..

네트워크 2024.10.12

계층별 데이터 단위

깊이 있는 이해를 위해 계층별 데이터 단위를 외워야한다.   크롬 브라우저가 인터넷으로 정보를 송수신하기 위해 소켓 인터페이스를 이용해 송수신 할 것이다. 이 때 데이터 단위를 따져보면 L1~L2 수준에서 구분하는 단위가 Frame 이다.  더불어 L3 IP 수준에서 논하는 단위는 Packet, L4 TCP에서 논하는 단위는 Segment이다. 여기까지는 OS 단이고, User mode application 단에서 socket 의 단위는 Stream 이다. Stream의 특징으로는 시작은 있지만 끝이 언제인지 정의되어 있지 않다. 이는 어플리케이션 수준에서 정하기 때문이다. 데이터를 송수신하는 운영체제 입장에서 Stream은 연속적으로 이어진 크기를 정확히 알 수 없는 큰 데이터이다.   ...  소켓이..

네트워크 2024.10.10

패킷의 생성, 전달, 소멸 과정

패킷을 택배라고 가정했을 때, data는 패킷으로 감싸지고 gateway 를 통해 입력된 host(ip)를 찾아서 port 번호에 전달된다. 위 그림을 조금 더 구체적으로 표현하면 아래와 같다.   소켓은 파일의 일종으로 User mode application Process가  Kernal mode application Process에 접근할 수 있도록 추상화시켜준 인터페이스이다.  (data를 socket에 write 한다. 다만, tcp 형태이기에 write라는 표현보다는 send라는 표현이 더 적합하다.)  TCP 레이어 단에서는 segment 형식의 tcp 정보 / data 가 만들어지고,IP 레이어 단에서는 기존 데이터에서 IP 정보가 추가된다. Driver 단에서도 이더넷 헤더 정보가 추가되어..

네트워크 2024.10.10

인캡슐레이션(Encapsulation)과 디캡슐레이션(Decapsulation)

패킷을 이야기할 때 따라다니는 개념이 인캡슐레이션은(Encapsulation)이다.  인캡슐레이션은 아래 러시아 전통 목각 인형인 마트료시카를 떠올리자.    해당 인형의 특징과 같이 쏙 넣었다라는 의미에서 몇가지 특징이 있다. '단위화'의 개념인데, 이는 포장의 개념으로 어떤 데이터인지 못보게 막겠다라는 의도이다.   위 인형의 구조를 네트워크 개념으로 바꾸면 아래와 같은 그림이 된다.   위 그림에서 L2 Frame 안에 L3가 들어있다. 이 말은 L2 Payload에 IP Packet이 있고, L3 에는 L4 가 들어있어 L3 Payload에는 TCP Segment가 있다는 의미이다. 다만 계속해서 이런 구조를 갖는 것이 아닌 TCP 단 즉 L5 부터는 Stream 형식으로 구성되어 있다.   결국..

네트워크 2024.10.10

L3 패킷(Packet) 이란

L3 Packet1) Packet이라는 말은 L3 IP Packet으로 외워라2) Header와 Payload로 나뉘며 이는 상대적인 분류이다. 3) 최대 크기는 MTU    Packet?1) 무언가 감싸서 하나의 단위 데이터로 만든 것이 패킷이다. 2) 패킷이 언급되면 L3 IP 키워드가 바로 따라와야 한다. 3) 패킷은 Header와 Payload로 나눌 수 있다.- 패킷을 택배 상자로 비유할 수 있다. - Header는 송장이며, Payload는 내용물이다. 4)최대 크기 MTU(Maximum Transmission Unit) 는 매우 중요하다.- Header부터 Payload까지가 MTU이다.- 용량은 1500byte로 약 1.4kb이다.  - 인터넷이라는 논리 네트워크에서 분류할 때 최대 단위가..

네트워크 2024.10.10

IPv4 주소의 기본 구조

Mac 주소는 48bit 주소 체계를 가진다. IPv4는 32bit 주소 체계를 가진다. 이는 8bit 4개가 모인것과 같다. 우린 8bit에 주목해야 한다. 8bit는 2에8제곱 가지의 경우의 수를 가지고 있으며, 이는 256이다.   IP는 8bit 씩 잘라서 점으로 나눈다. 한 단위 당 8bit 이기 때문에 0~255까지 표현이 가능하다. IPv4 32bit로 구성되어 있는데 24bit는 Network ID, 나머지 8bit는 HostID 식별자이다.   IP주소는 Host 식별자가 맞다. 즉 인터넷에 연결된 컴퓨터 한 대를 식별하기 위한 고유 번호이다. 조금 더 자세히 보면 '네트워크 ID', '호스트 ID'로 구분이 된다. 네트워크 식별자는 '서울 특별시 강남구 역삼동' 과 같은 식별자이며, 호..

네트워크 2024.10.08

LAN과 WAN의 경계 그리고 Broadcast

LAN과 WAN의 경계 그리고 Broadcast  1) Broadcast 범위를 생각해보자.2) Broadcast 주소라는 매우 특별한 주소가 존재한다. (MAC, IP 모두 존재)3) 논리적인 것인지 아니면 물리적인 것인지로 구분하는 것도 방법이다.4) 일단 MAN(Metropolitan Area Network)는 제외하자.   ...  네트워크를 이야기 할 때 가장 중요한 이슈 중 하나가 Broadcast이다. Broadcast Address, 즉 방송 주소가 있다. 이 개념은 중요하다. 그리고 여러가지 범위로 응용되어 활용된다. Broadcasting은 효율과 관련이 없으며 효율을 떨어 트린다.   Broadcast와 반대되는 개념이 Unicast이다. Unicast는 콕 집어 한 곳에 이야기를 하..

네트워크 2024.10.05