UDP 통신 특징

 

1.비연결형 서비스로 데이터그램 방식을 제공한다

 

2.정보를 주고 받을 때 정보를 보내거나 받는다는 신호절차를 거치지 않는다.

 

3.UDP헤더의 CheckSum 필드를 통해 최소한의 오류만 검출한다.

 

4.신뢰성이 낮다

 

5.TCP보다 속도가 빠르다

 

(스타할때... UDP로 해줘야 랙이 안걸리니까...)

 

TCP 통신 특징

 

UDP 와는 다르게 연결형 서비스로 , 패킷이 가지 못할 경우 캐치하여 안정적 전송을 보장한다.

 

연결 지향 프로토콜로서 흐름제어/오류제어/혼잡제어 기능을 한다.

 

- TCP 3- way - handshake (연결설정)

 

데이터의 전송 순서를 보장한다. (데이터의 순서 유지를 위해 각 바이트마다 번호를 부여)

신뢰성있는 데이터를 전송한다. (Sequence Number, Ack Number를 통한 신뢰성 보장)

데이터 흐름 제어(수신자 버퍼 오버플로우 방지) 및 혼잡 제어(패킷 수가 과도하게 증가하는 현상 방지)

전이중(Full-Duplex), 점대점(Point to Point) 서비스

UDP보다 전송속도가 느리다.

 

  TCP vs UDP

 

즉, 신뢰성이 요구되는 애플리케이션에서는 TCP를 사용하고 간단한 데이터를 빠른 속도로 전송하고자 하는 애플리케이션에서는 UDP를 사용한다.

'네트워크 공부' 카테고리의 다른 글

TCP 통신(TCP 3-way Handshake,4way)  (0) 2021.04.30
DHCP  (0) 2021.04.22
TCP/UDP 소켓 통신 실습  (0) 2021.04.22
혼자 노트 필기 정리(NAT,NAPT,DHCP)  (0) 2021.04.21
IP 클래스 분류  (0) 2021.04.20

 

MTU(maximum transmission unit)

MTU란 TCP/IP  네트워크와 같이 통신에서 패킷 OR 프레임 기반의 네트워크에서 전송 될 수 있는 최대 크기의 패킷 또는 프레임을 말한다.

한번에 전송 할수 있는 최대 전송량(byte) MTU 값은 매체에 따라 달라질수 있다.(보통의 이더넷 환경에서는 1500)

 

MSS(maximum segment size)

MSS = MTU - IP header의 크기 (최소 20 byte) - TCP header 크기 (최소 20 byte)

즉, TCP상에서 전송 할 수있는 사용자 데이터의 최대 크기이며 MTU 값에 의해 결정된다.

 

각 필드 설명

 

Version(4bit)

IP 프로토콜 확인(IPv4,IPv6)

 

Header Length (4bit)

IP header의 길이를 32bit단위로 나타내며 최소 5이상이다.

 

Type of Service Flags (1로 설정시 활성화)

0 - 보통 데이터로 취급(대부분의 IP)

1 - 비용 최소화 : 가장 비용이 적게 드는 경로를 통해 패킷을 라우트한다.

2 - 신뢰성 최대화 : IP 가 가장 신뢰성있는 네트워크를 통해 패킷을 라우터할 것을 요구한다.

4 - 처리량 최대화 : IP가 보통 데이터 패킷을 더 많은 처리를 하면서 라우트 할것을 요구한다.

8 - 지연 최소화 : IP가 보통 데이터보다 더 신속한 패킷의 라우트를 요구

15 - 보안 최대화 : IP가 가장 안전한 경로를 통해 패킷을 라우트 할것을 요구

 

Total Packet Length 필드 (16bit)

- 전체 IP 패킷의 길이를 바이트 단위로 나타낸다.

 

 

Fragment identifier 필드 (16bit)

- 분열이 발생한 경우, 조각을 다시 결합하기 원래의 데이터를 식별하기 위해서 사용한다.

 

Fragmentation Flags 필드 (3bit)

- 처음 1bit는은 항상 0으로 설정, 나머지 2비트의 용도는 다음과 같다.

- May Fragment : IP 라우터에 의해 분열되는 여부를 나타낸다. 플래그 0 - 분열 가능 1 - 분열 방지

- More Fragments : 원래 데이터의 분열된 조각이 더 있는지 여부 판단. 

   플래그 0 - 마지막 조각, 기본값 1- 조각이 더 있음

 

Fragmentation Offset (13 bits)

-조각나기 전 원래의 데이터그램의 8 바이트 단위의 위치

 

Time-to-live 필드(8bit)

- 데이터을 전달할 수 없는 것으로 판단되어 소멸되기 이전에 데이터가 이동할 수 있는 단계의 수를 나타낸다.

IP 패킷 수명

 

 

Protocol Identifier 필드(8bit)

;어느 상위계층 프로토콜이 데이터 내에 포함되었는가를 보여줌 . 例) ICMP -> 1, IGMP -> 2, TCP -> 6, EGP -> 8, UDP -> 17,  OSPF -> 89 등

 

OSPF [정보통신기술용어해설]

 

ktword.co.kr

 

Header Checksum 필드(16bit)

; IP 헤더의 체크섬을 저장 ->헤더에 대한 오류 검출

 

 

Source IP Address 필드(32bit)

- 송신처 IP 주소

 

 

Destiantion IP Address 필드(32bit)

- 목적지 IP 주소

 

 

Options(선택적) 필드(가변적)

 

Type-of-Service 플래그 처럼 특별한 처리 옵션을 추가로 정의 할 수 있다.



DHCP 서버를 간단하게 설명하면 IP를 유동적으로 관리할수 있는 프로토콜(IP 자동 할당 및 분배)

 

출처 : 위키피디아

DHCP discover : ip address를 요청하는 packet

DHCP offer : ip address 할당하는 packet

 

DHCP request :할당받은 ip address를 사용해도 되는지 요청하는 packet  (ip address를 받았음을 확인하고, DHCP table 등록)

 

DHCP ACK : 사용 허가 packet

 

 

'네트워크 공부' 카테고리의 다른 글

TCP 통신(TCP 3-way Handshake,4way)  (0) 2021.04.30
TCP/UDP 특징 및 비교  (0) 2021.04.22
TCP/UDP 소켓 통신 실습  (0) 2021.04.22
혼자 노트 필기 정리(NAT,NAPT,DHCP)  (0) 2021.04.21
IP 클래스 분류  (0) 2021.04.20

우분투 환경에서 python 이용해서 빠르게 통신해보기

 

중간중간 오타가 많아서 감안 부탁드립니다 ㅎㅎ

 

 

python 이용한 UDP통신

loopback 을 이용해서 UDP통신 서로 해보기

 

python 이용한 TCP 통신 (오타 ㅎㅎ...)
wireshark 이용해서 확인해보기

Loopback으로 hello world 들어온것을 확인 ~

'네트워크 공부' 카테고리의 다른 글

TCP/UDP 특징 및 비교  (0) 2021.04.22
DHCP  (0) 2021.04.22
혼자 노트 필기 정리(NAT,NAPT,DHCP)  (0) 2021.04.21
IP 클래스 분류  (0) 2021.04.20
ARP & IP  (0) 2021.04.20

+ Recent posts