TCP/IP이란?
- 인터넷 에서 데이터전송은 TCP, UDP, IP로 이루어 져있다.
- PC가 인터넷에 액세스 하기 위한 프로토콜의 모음
TCP/IP의 계층 구조
TCP/IP는 응용계층, 트랜스포트계층, 인터넷층, 네트워크 인터페이스층
응용 = 사용자 App의 요청을 받아 적절 메시지로 변환 하위계층으로 전달하는 역할
트랜스 = IP에 의해 전달되는 패킷의 오류를 검사, 재전송 요구 TCP, UDP사용
인터넷 = 전송계층에서 받은 패킷을 효율적으로 전달하는 것만 고려
인터페이스 = 모든 표준 프로토콜 지원, 프레임을 물리회선에 올리거나 내리는 역할
TCP/IP에서 사용하는 주소
- MAC 주소 (L2 ), IP 주소(L3) , 포트번호(L4)
- 포트번호는 사용자 프로그램 환경에서 설정되기에 다른 계층 프로토콜 동작에
크게 영향을 미치진 않는다.
- IP주소를 통해 MAC을 찾아오는 것이 ARP
- MAC주소를 IP주소로 변환하는 것이 RARP
하드디스크가 없는 경우 자신의 내장LAN카드주소는 알지만 IP주소는 알 수 없다.
!!!IP는 비 신뢰성 프로토콜로서 UDP와 TCP의 도움이 있어야 데이터가 원활히 간다
- 패킷을 적절한 순서로 보내는 순서화를 TCP가 해낸다.
- IP프로토콜 자체는 TCP, UDP와 같이 신뢰성 프로토콜과 함께 사용한다.
전송 계층
- 신뢰성 있는 데이터 전송을 위해 흐름제어, 오류제어 등의 기능을 담당
- TCP 신뢰성 데이터 흐름 프로토콜
- UDP : TCP에 비해 빠름, 전송데이터 수신확인을 보장 안한다.
- TCP연결 설정
데이터를 양방향으로 주고 받고 이것을 ‘전 이중 방식’이라고 한다.
한편은 통신을 개시하고 한편은 통신개시의 요구에 응답할수 있어야 한다.
2개 장치 사이의 데이터 단위는 세그먼트이다.
TCP 통신을 위해 three-way handshaking을 한다.
TCP 종료를 위해 Four-way handshaking을 한다.
- 흐름제어
송신자가 수신자가 처리 가능 속도보다 더 빨리 보낸다면 슬라이딩 윈도우 프로토콜을 제공한다.