네트워크 탄생 배경과 TCP/IP

Dl2l·2023년 3월 6일
0

Chapter1. TCP/IP

네트워크 탄생 배경 및 TCP/IP의 개념과 필요성을 알아보자!

1. 네트워크의 탄생 배경

회선 교환 방식은 한 사용자가 회선을 할당 받으면 그 사용자가 회선을 사용하고 있지 않더라도 다른 사용자에게 회선을 할당할 수 없다.
대표적인 예로 전화망이 있다.
서비스의 질을 항상 보장해준다는 장점이 있지만 네트워크 자원을 많이 소모한다.

패킷 교환 방식은 일정한 데이터의 블록인 패킷을 교환기가 수신측 주소에 따라 적당한 통신경로를 선택해서 전송하는 교환방식이다.
데이터를 잘게 나누어 전송하는 셈이다.
패킷 교환 방식은 데이터를 전송하는 동안만 네트워크 자원을 사용하도록 한다.
회선 이용률이 높고 고 신뢰성, 고품질, 고효율이지만 경로의 각 교환기에서 다소 지연이 발생하기 때문에 지연 시간을 겪을 우려도 있다.

2. IP와 IP 패킷을 이용한 통신 방법의 개념과 한계점

IP address

인터넷 또는 로컬 네트워크에서 장치를 식별하는 고유한 주소다.
네트워크의 장치 간에 정보를 전송할 수 있도록 하는 식별자이기도 하다.

가장 일반적인 유형의 IP주소는 IPv4로 알려져 있다.
.으로 구분되는 4개의 숫자는 각각 0에서 225까지의 범위를 가진다.
24.156.99.202

IP주소가 부족해지면서 IPv6이 나왔다.
4개의 16진수로 구성된 8개 그룹으로 구성된다.
2001:0db8:85a3:0000:0000:8a2e:0370:7334

IPv4는 최대 약 43억 개의 고유 IP 주소를 지원하는데, IPv6은 훨씬 더 높은 340,282,366,920,938,463,463,374,607,431,768,211,456개를 지원한다.


IP주소는 누가 만들까?
인터넷의 보안을 유지하고 모든 사람이 인터넷을 사용할 수 있도록 하기 위해 설립된 미국의 비영리조직인 ICANN( Internet Corporation for Assigned Names and Numbers )의 부서, IANA( Internet Assigned Numbers Authority )에서 수학적으로 생성하고 할당한다.
참고로 우리가 도메인을 등록 할 때마다 도메인 등록 기관은 ICANN에 수수료를 지불한다.


IP

먼저 IP란, Internet Protocol을 뜻하며,
인터넷을 통한 컴퓨터 간의 데이터의 교환 방식을 정의하는 규칙체계라는 뜻이다.
IP는 TCP/IP 와 UDP/IP의 두 가지 전송 프로토콜이 수반되는 서비스를 제공하므로 TCP/IP 또는 UDP /IP 라고도 한다.
IP는 지정한 IP Address에 패킷이라는 통신 단위로 데이터 전달을 한다.

IP패킷

패킷은 pack + bucket 합성어로 소포로 비유할 수 있다.
IP 패킷은 우체국 송장처럼 출발지IP, 목적지 IP 같은 정보가 포함돼있다.

IP패킷은 한 번에 전송할 데이터의 크기를 나타낸다.
크게 Header와 Data 부분으로 나눌 수 있다.

패킷은 크기가 너무 크면 전송 중(시작할 때, 라우터에서, MaximumTransfer Unit안맞을 때) 단편화 될 수 있는데 (패킷이 잘리고, 각각 IP헤더가 따로 부여된다.) 목적지 주소에서만 단편화된 패킷을 재조립한다.

서버 컴퓨터인 노드들은 목적지 IP에 도달하기 위해 서로 데이터를 전달하고, 데이터가 문제 없이 전송되면 서버도 IP패킷을 이용해 클라이언트에 응답을 전달한다.

IP의 한계점

비연결성
패킷을 받을 대상이 없거나 서비스 불능 상태여도 클라이언트는 서버의 상태를 파악할 수 없기 때문에 패킷을 그대로 전송한다.

비신뢰성
중간에 있는 노드(서버 컴퓨터)가 데이터를 전달하던 중 장애가 생겨 패킷이 중간에 소실되더라도 클라이언트는 이를 파악할 방법이 없다.

전달데이터 용량이 클 경우 패킷 단위로 나눠서 데이터를 전달하게 되는데, 이 때 패킷들은 중간에 서로 다른 노드를 통해 전달될 수 있다.
이렇게 되면 의도하지 않은 순서대로 서버에 패킷이 도착할 수 있다.

3. IP Packet을 이용한 통신 방법의 한계를 보완하는 TCP/UDP Packet

TCP/IP모델

인터넷에서 컴퓨터들이 서로 정보를 주고받는 데 쓰이는 통신규약(프로토콜) 모음이다. TCP/IP프로토콜은 인터넷 표준이며, 높은 신뢰성을 보장한다.

OSI 모델과 달리 4개의 Layer들로 구성되어 있으며, 실제로 많이 사용되고 있는 기술을 바탕으로 OSI 7계층의 복잡성을 4계층으로 단순화 시킨 모델이다.
TCP/IP는 3,4계층을 중심으로 한 통신 프로토콜의 계층 집합이다.

전송계층(transport layer)에는 TCP와 UDP프로토콜이 있다.

TCP(Transmission Control Protocol)

-연결 지향( TCP 3way handshake)

(* SYN은 Synchronize, ACK는 Acknowledgment)

TCP/IP프로토콜의 Transport Layer을 이용해서 통신을 하는 응용프로그램이 데이터를 전송하기 전에 먼저 정확한 전송을 보장하기 위해 상대방 컴퓨터와 사전에 세션을 수립하는 과정을 의미

-데이터 전달 보증
데이터 전송이 성공적으로 이루어지면 이에 대한 응답을 돌려주기 때문에 IP패킷의 한계인 비연결성을 보완할 수 있다.

-순서 보장
만약 패킷이 순서대로 도착하지 않는다면 TCP세그먼트에 있는 정보를 토대로 다시 패킷 전송을 요청할 수 있다.

-신뢰할 수 있는 프로토콜

단점

  • 매번 연결할 때마다 3way handshake를 해야 해서 시간이 오래 걸린다
  • 단 한 개의 데이터 손실이 나도 재전송을 해야한다.

UDP(User Datagram Protocol)

IP에 PORT, 체크섬 필드 정보만 추가된 단순한 프로토콜이다.
-비연결 지향
-데이터 전달 보증 없음
-순서 보장 없음
-단순하고 빠름
-신뢰성보다는 연속성이 중요한 서비스에 주로 이용
실시간 스트리밍 등



참고자료

profile
안녕하세요

0개의 댓글