본문 바로가기

DEV LOGS

[Windows Socket]데이터 전송 원리

용어

  • 제어 정보 : 각 프로토콜에 따라 정의 되어있고, 데이터를 송·수신 하는데 필요한 정보. IP 주소, 포트 번호, 오류 체크 코드 등이 있다.
  • 헤더(header) : 송신 혹은 수신 하려는 데이터를 기준으로 앞쪽에 붙은 제어 정보
  • 트레일러(trailer) : 송신 혹은 수신 하려는 데이터를 기준으로 뒤쪽에 붙은 제어 정보
  • 패킷(packet) : 데이터 + 제어 정보

패킷 전송 형태
- 송신 측


- 수신 측


위의 그림과 같이 송신 할 때는 응용 프로그램으로 부터 각 계층을 거치면서 제어 정보가 덧붙은 형태로 전송 되며, 수신 할 때는 물리 계층 부터 각 계층을 거치면서 제어 정보를 제거하면서 최종 적으로 응용프로그램에서는 데이터만 받게 된다.



IP주소와 포트 번호

(1) IP 주소

  • IP 주소별 특징

 주소 종류

IPv4

IPv6 

 총 크기

32 비트

128 비트 

 구분 기호

. (dot) 

: (colon) 

 구분별 크기

8비트 단위로 4개로 구분 

 16비트 단위로 8개로 구분

 사용 진법

 10 진수

16 진수 

예시 

 127.0.0.1

2001:0230:abcd:ffab:0023:eb00:ffff:1111 


  • 폐쇄된 네트워크나 IP를 공유하는 경우가 아니라면 IP 주소는 전 세계적으로 값이 유일하다.
  • IP 주소는 호스트를 식별하는 목적으로 사용된다. ( 프로세스를 부분하지는 못한다.)
(2) 포트 번호
  • 통신의 종착점을 식별하는 번호 ( 하나의 프로세스가 포트 번호를 두 개 이상 사용하거나, 하나의 포트 번호를 두 개 이상의 프로세스가 사용하는 경우가 있다. )
  • TCP와 UDP에서는 부호없는 16비트 정수를 사용한다. ( 0 ~ 65535 )
  • 영역별 포트 번포

포트 번호 

 분류

 0 ~ 1023

 알려진 포트 (well-known ports) 

 1024 ~ 49151

 등록된 포트 (registered ports) 

 49152 ~ 65535 

 동적 / 사설 포트 (dynamic and / or private ports) 


(3) 도메인 이름

  • IP 주소는 사람이 기억하고 사용하기 불편하기 때문에 사람이 사용하기 편한 문자 위주로 이루진 고유 식별 주소


'DEV LOGS' 카테고리의 다른 글

[Centos7] Nginx 설치  (0) 2018.07.29
[Windows Socket]소켓의 개념  (0) 2018.07.20
[Windows Socket]TCP/IP 프로토콜 구조  (0) 2018.07.19
[GIT]윈도우 10 Git 설치  (0) 2018.07.18
[GIT] 버전관리시스템  (0) 2018.07.18