728x90
TCP/IP란?
- TCP/IP는 인터넷을 포함한 많은 컴퓨터 네트워크에서 세계 표준으로 사용되는 통신 프로토콜입니다.
- TCP/IP는 인터넷 프로토콜 스위트(Internet Protocol Suite)라고 말하기도 하며, www(World Wide Web)의 발명으로 현재 표준적으로 이용되어지고 있는 통신 룰입니다.
- TCP/IP는 하나의 프로토콜이 아닌 TCP와 IP를 합쳐서 부르는 말입니다.
- TCP/IP를 사용하겠다는 것은 IP 주소의 체계를 따르면서 IP Routing을 통해 목적지에 도달하고, TCP을 이용하여 송수신자의 논리적 연결을 만들고 신뢰성을 유지할 수 있도록 하는 것 입니다.
- 간단하게 송신자가 수신자에게 IP 주소를 사용하여 데이터를 전달하고 그 데이터가 잘 가고 제대로 받았는지에 대한 이야기를 한다고 생각해야합니다.
TCP/IP 모델 4계층
Layer | 역할 | 표준(프로토콜) | 주요 사용 내용 |
Application Layer | 애플리케이션끼리 정보를 주고 받는다 | HTTP, HTTPS, SMTP, POP3, IMAP4, DHCP, DNS 등 | WEB SITE 오픈, MAIL, 파일 전송 등 |
Transport Layer | 수신측 애플리케이션에 확실하게 전달하는 담당 | TCP, UDP, NetWare/IP 등 | Port 넘버를 통해 어떤 애플리케이션을 전달할지 찾아준다. |
Internet Layer | 수신 측까지 데이터를 전달하는 담당 | IP, ARP, ICMP, OSPF 등 | 라우팅 |
Network Access Layer | 물리적 기기 간 전송을 담당 | Ethernet, TokenRing, FDDI 등 | MAC 주소 사용, 실제 디지털 호를 주고 받음 |
TCP란?
- TCP(Transmission Control Protocol)란 전송 제어 프로토콜입니다.
- 네트워크에서 데이터 전송에 있어 신뢰성 있게 관리하기 위한 프로토콜 입니다.
- 데이터는 네트워크를 통해 전달되는 과정에서 손실 또는 순서가 뒤바뀔 수 있는데, TCP는 손실을 검색하여 교정하고 순서를 재조합할 수 있게 해줍니다.
TCP의 특징은?
- 신뢰성
- TCP는 데이터가 올바르게 전송되었는지 확인하고, 손실된 패킷이 있을 경우에 재전송을 요청한다.
- 이것은 데이터의 무결성을 보장한다.
- 흐름제어
- TCP는 송수신자 간의 데이터 전송 속도를 조절하고, 수신자가 데이터를 처리할 수 있는 속도로만 전송한다.
- 이것은 데이터의 손실을 방지한다.
- 연결형 서비스
- TCP는 데이터를 전송하기 전에 송수신자 간에 연결을 설정한다.
- 이 과정에서 3-way handshake라고 불리며, 연결이 설정된 후 데이터가 전송됩니다.
- 순서의 보장
- TCP는 데이터 패킷이 전송된 순서와 동일한 순서로 수신되도록 보장하고 있다.
- 순서대로 도착하지 않아도 TCP는 재정렬하여 올바른 순서로 전달한다.
- 세그먼트화
- 큰 데이터 전송을 처리하기 위해 데이터를 작은 세그먼트로 나누어 전송하고, 각 세그먼트마다 순서 번호가 부여된다.
TCP의 동작(3-way handshake)
- TCP로 이루어지는 모든 통신은 반드시 3-way handshake를 통해 진행한다.
- 수신자가 받을 수 있는지, 송신자가 보낼 수 있는지 미리 확인 후에 통신하여 데이터를 안전하게 보낸다.
- 송신자가 수신자에게 'SYN'을 전달하여 통신이 가능한지 확인을 한다.
- 수신자는 송신자로 부터 'SYN'을 받고, 'SYN/ACK'을 송신자에게 전달하여 데이터를 받을 수 있다는 것을 알린다.
- 송신자는 수신자에게 'SYN/ACK'을 받고 'ACK'를 전달해 데이터 전송 시작을 알린다.
- 이 밖에도 주로 사용하는 Flag로 RST, FIN, FIN/ACK, PUSH 등이 있다.
728x90
IP(Internet Protocol)란?
- IP(Internet Protocol)란 네트워크에서 데이터 패킷의 주소 지정과 라우팅을 담당하는 프로토콜입니다.
- TCP/IP에서 컴퓨터를 식별하기 위해 사용되는 주소입니다.
- IP주소만으로는 네트워크 상에서의 송 수신은 가능하지 않으며, MAC과 IP로 조합해야 통신이 가능하다.
IP의 특징은?
- 주소 지정
- IP는 각 장치에 고유한 IP 주소를 부여해, 네트워크 내에서 장치를 식별한다.
- IPv4, IPv6 두 가지가 있으며, IPv4는 32비트 주소 체계, IPv6는 128비트 주소 체계를 사용한다.
- 패킷 전송
- IP는데이터를 패킷 단위로 나누어 전송하고, 각 패킷에는 송수신자의 IP 주소가 포함된다.
- 이것을 통하여 패킷이 올바른 경로를 따라 전달한다.
- 라우팅
- IP는 패킷이 목적지까지 가는 최적의 경로를 선택할 수 있는 라우팅 기능을 제공한다.
- 라우터는 IP 주소를 기반으로 패킷을 전달한다.
- 비연결형 서비스
- IP는 신뢰성을 보장하지 않으며, 패킷이 손실되거나 순서가 뒤바뀔 수 있다.
- 이 경우 상위계층에서 신뢰성을 보장할 수 있는 프로토콜인 TCP가 필요한 것이다.
TCP/IP 예시
www.naver.com을 접속한다면 어떻게 동작을 할까?
1. 네이버 웹 서버에 HTTP 요청을 보내기 위해 순서대로 각 계층에 필요한 정보의 패킷을 생성해야한다.
- Transport Layer는 TCP 헤더가 들어가고, 출발지 포트 번호인 SP와 목적지 포트번호인 DP를 본다.
- Internet Layer에는 IP 헤더가 들어가고, 우리는 도메인 네임으로 들어갔으니 그것을 IP주소로 바꾸어줄 도메인 네임 서버(DNS)에게 네이버 웹 서버의 IP 주소를 알아낸다.
- Network Access Layer에는 Ethernet 헤더가 들어가고, 여기서 물리주소인 출발지와 목적지의 MAC 주소가 필요하고, 이때에 MAC 주소를 알 기 위해 ARP 프로토콜을 사용한다.
2. 패킷을 전송하기 위해 TCP는 송수신측 연결을 위해 3-way handshake를 완료한다.
3. MAC 주소와 IP 주소를 이용한 라우팅을 통해 패킷을 목적지까지 전송한다.
4. 보낸 요청에 대한 응답으로 네이버 웹 서버에서 라우팅을 통해 HTML을 받아온다.
5. 응답받은 HTML은 브라우저에 띄운다.
6. 데이터 송수신이 모두 완료되고 네이버 웹서버와 TCP 연결을 4-way handshake를 통해 종료한다.
728x90
'Network > Regarcy' 카테고리의 다른 글
[Network] 게이트웨이 이중화 프로토콜(VRRP, HSRP) 란? (0) | 2024.05.29 |
---|---|
[Network] Spanning-Tree Protocol(STP) (0) | 2024.04.24 |