묘하게 궁금한 것들

왜 UDP 는 TCP/IP 처럼 UDP/IP 라고 하지 않을까??

코딩하는상후니 2022. 11. 25. 10:42

 

 


 

@왜 UDP 는 TCP/IP 처럼 UDP/IP 라고 하지 않을까??

 

TCP/IP 는 굉장히 역사가 오래되었다.
 
1973년 인터넷의 기원이라고 불리는 ARPAnet 가 개발되었고 현재 초기 버전 TCP 도 함께 사용되었다.
이에 따라  해당 내용들을 문서에 기록하기 위해서 만든 것이 'RFC ( Request For Comments )'이다.
이 때의 TCP 는 오늘날 TCP 의 표면적인 기능들만 제공되었고 TCP 는 지금까지 계속 발전해왔다.
 
중요한 것은
초기 네트워크 기술인 'ARPnet 프로토콜에 이미 TCP 라는 핵심 프로토콜이 포함되어있었다는 사실' 이다.
 
하지만 부분적으로 문제점도 많고 생산성의 한계점도 분명했다.
몇 년의 TCP 연구 끝에 1977 년 'Jon Postel' 이란 사람이 IEN 을 통해 새로운 Layer 를 발표한다.
 
그들은 TCP 를 이용한 종단간의 통신을 위해 internet packaing ( IP ) / routing protocol 을 사용해야했고
이들을 사용하기 위해 TCP/IP Architecture 를 만들어냈다.
 
이 구조는 기존의 ARPAnet 에서 사용하는 Core TCP 를 TCP ( transport layer ) / IP ( internet layer ) 로 나누었다.
그래서 이름이 TCP/IP 로 불려진다.
구조를 나눈 내용은 1978년 TCP version 3 에 쓰여지고 오늘날 뼈대가 되는 TCP/IP 는 1980 년 version 4 에 탄생하게 된다.
이 때, 인터넷이 확산되면서 TCP/IP protocol 을 탑재한 ARPAnet 은 점차 더 많은 곳에서 쓰이면서 발전하게 되고
오늘날의 TCP/IP Internet 가 탄생하게 된다.
 
We are screwing up in our design of internet protocols by violating the principle of layering. Specifically we are trying to use TCP to do two things: serve as a host level end to end protocol, and to serve as an internet packaging and routing protocol. These two things should be provided in a layered and modular way. I suggest that a new distinct internetwork protocol is needed, and that TCP be used strictly as a host level end to end protocol.
-- Jon Postel, IEN 2, 1977
 
 
반면,
UDP 는 네트워크 수행 능력과 효율의 목적으로 고안된 프로토콜이며 TCP/IP 보다 늦게 고안되었다.
( RFC786 참고. )
이 시기에 주로 쓰이는 프로토콜 중 하나가 TCP/IP 였고
이 때, 이미 IP 계층은 프로그래머들 사이에서 당연한 계층으로 받아들이게 되었기 때문에
굳이 UDP/IP 라고 부를 필요가 없었고 UDP 라고 표현해도 받아들일 수 있었다.
 
즉,
TCP/IP 라고 같이 통합하며 부르는 것은 TCP 가 그만큼 오랜 역사를 가졌다는 의미이다.
이 후에 나온 프로토콜( UDP, ICMP .. ) 들은 TCP/IP 구조에 얹혀져 나온 것들이기에
해당 이름에 굳이 IP 를 붙여서 부를 필요가 없다.
 
 
여기까지 살펴보았을 때 나의 생각은
TCP/IP 는 IP 계층이 생기게 된 상징적인 부분이 있기에 유독 TCP/IP 로 쓰이는 것처럼 보인다.
기존에는 하나였던 TCP 에서 나뉘어진 것이기에 보는 관점에 따라서
TCP/IP 라고 부를 수도 있고 통합해서 TCP 라고 부를 수 있을 것 같다.
마찬가지로 UDP 도 UDP/IP 라고 부를 수 있지 않을까 ??
 
이렇게 보는 관점에 따라서 다르게 용어를 쓰는 것들이 네트워크를 공부하면서 많이 본다.
그로 인해,
많은 사람들이 혼용해서 쓰기도 하고 재대로 이해하지 않고 쓰는 경우도 있어서 잘못된 정보가 많이 있다.
 
배우는 입장에서는 근거가 있는 자료인지 자신이 해당 개념을 재대로 이해하고 있는지
혹은 자신이 알고 있는 것과 다른지 다르다면 무엇이 다른지
항상 새로운 것을 받아들일 수 있는 유연한 자세를 가지는 것이 중요하다고 생각한다.

 

 

 


 

참고 자료