Chapter 1 인터넷 네트워크
이 학습 자료는 김영한님의 인프런 강의를 참고해서 만들었습니다.
1. 인터넷 통신
- 클라이언트 ↔ 인터넷(노드가 포함) ↔ 서버
- 인터넷은 무수한 노드들을 포함하기 때문에 복잡하다. → 규칙이 필요
2. IP(인터넷 프로토콜)
- 지정한 IP 주소에 데이터 전달
- 패킷이라는 통신 단위로 데이터 전달
2.1 IP 프로토콜의 한계
- 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태에서의 패킷이 전송됐는지 모름
- 비신뢰성 : 패킷이 전송 중간에 사라지거나(소실) 순서가 바뀔 수 있음
- 프로그램 구분 : 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 많으면 어디로 갈지 모름
3. TCP, UDP
3.1 인터넷 프로토콜 스택의 4계층
- 애플리케이션 계층(상위) - HTTP, FTP
- 전송 계층 - TCP, UDP
- 인터넷 계층 - IP
- 네트워크 인터페이스 계층(하위)
3.2 데이터 전송 순서
- IP 패킷 정보 : 출발지 IP, 목적지 IP가 포함 됨
- TCP 세그먼트 : 출발지 PORT, 목적지 PORT, 전송 제어, 순서, 검증 정보 등이 포함
3.3 TCP 특징
- 전송 제어 프로토콜(Transmission Control Protocol)로써 신뢰할 수 있다
- TCP 세그먼트에 있는 정보들을 바탕으로 확인한다.
- 연결지향 - TCP 3 way handshake(가상 연결)
- 데이터 전달 보증 → 서버에서 데이터를 받았다고 클라이언트에게 알림
- 순서 보장 → 서버에서 순서가 잘못된 부분을 알아내서 클라이언트에게 알림
3.3.1 TCP 3 way handshake
- 개념적(논리적)으로 연결 되어있음(물리적, 직접적 연결X)
- UDP에서 비해서 느림
3.4 UDP 특징
- 사용자 데이터그램 프로토콜(User Datagram Protocol)
- 연결지향X, 데이터 전달 보증X, 순서 보장X
- 단순하고 빠름
- IP와 비슷(but, UDP = IP + PORT + 체크섬)
- 애플리케이션에서 추가 작업 필요
4. PORT
- 한 클라이언트에 둘 이상의 서버를 연결할 때 사용
- 같은 IP 내에서 프로세스를 구분할 수 있게 해줌
- IP - 아파트
- 포트 - 호수
5. DNS
- 도메인 네임 시스템(Domain Name System)
- 전화번호부 역할
- 도메인 명을 IP 주소로 변환
- IP의 기억이 어렵고, 변경될 수 있다는 단점을 보완
'CS > [NETWORK]' 카테고리의 다른 글
Chapter 6 HTTP 상태 코드 (0) | 2021.11.18 |
---|---|
Chapter 5 HTTP 메서드 활용 (0) | 2021.11.16 |
Chapter 4 HTTP 메서드 (0) | 2021.11.11 |
Chapter 3 HTTP 기본 (0) | 2021.11.09 |
Chapter 2 URI와 웹 브라우저 요청 흐름 (0) | 2021.11.05 |