티스토리 뷰
IP(인터넷 프로토콜)
IP의 역할
- 지정한 IP 주소(IP Address)에 데이터 전달
- 패킷(Packet)이라는 통신 단위로 데이터 전달
IP 프로토콜의 한계
- 비연결성
- 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
- 비신뢰성
- 중간에 패킷이 사라지면?
- 패킷이 순서대로 안오면?
- 프로그램구분
- 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면?
IP 프로토콜
만으로는 문제점들을 해결할 수 없다 그래서 이런 문제점들을 해결해주는게 TCP 프로토콜
이다
TCP,UDP
인터넷 프로토콜 스택의 4계층
- 애플리케이션 계층
- HTTP,FTP
- 전송 계층
- TCP,UDP
- 인터넷 계층
- IP
- 네트워크 인터페이스 계층
TCP 특징
전송 제어 프로토콜(Transmission Control Protocol)
- 연결지향 - TCP 3 way handshake (가상 연결)
- SYN(접속 요청)
- SYN + ACK(요청 수락)
- ACK
- 데이터 전달 보증
- 데이터 전송
- 데이터 잘 받았음
- 순서 보장
- 패킷1,패킷2,패킷3 순서로 전송
- 패킷1,패킷3,패킷2 순서로 도착
- 패킷2부터 다시보내!
- 신뢰할 수 있는 프로토콜
- 현재는 대부분 TCP 사용
이런 것들이 가능한 이유는 TCP 세그먼트에
출발지 PORT, 목적지 PORT, 전송 제어, 순서, 검증 정보 등의 정보들이 담겨있기 때문이다 그렇기 때문에 TCP
를 신뢰할 수 있는 프로토콜이라고 부른다
UDP 특징
사용자 데이터그램 프로토콜(User Datagram Protocol)
- 하얀 도화지에 비유(기능이 거의 없음)
- 연결지향 - TCP 3 way handshake X
- 데이터 전달 보증 X
- 순서 보장 X
- 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름
- 정리
- IP와 거의 같다. + PORT + 체크섬 정도만 추가
- 애플리케이션에서 추가 작업 필요
PORT
같은 IP 내에서 프로세스 구분
IP가 아파트라면 PORT는 몇동 몇호이다
라고 생각하면 편하다
- 0 ~ 65535
- 할당 가능
- 0 ~ 1023
- 잘 알려진 포트, 사용하지 않는 것이 좋음
- FTP
- 20,21
- TELNET
- 23
- HTTP
- 80
- HTTPS
- 443
DNS
도메인 네임 시스템(Domain Name System)
전화번호부
도메인 명을 IP 주소로 변환
IP는 기억하기 어렵다
IP는 변경될 수 있다
DNS 사용
- 도메인 명 google.com
- 응답: 200.200.200.2
- 접속: 200.200.200.2
'네트워크' 카테고리의 다른 글
[HTTP] HTTP 메소드 활용 - 데이터 전송, API 설계 방법 (0) | 2022.01.13 |
---|---|
[HTTP] HTTP 기본 (0) | 2022.01.13 |
[HTTP] HTTP 메소드 - GET, POST, PUT, DELETE 차이점 (0) | 2022.01.12 |
[HTTP] URI와 웹 브라우저 요청 흐름 - URI, URL, URN 차이점 (0) | 2022.01.12 |
댓글