일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- margin
- 무상태
- couchcoding
- 팀프로젝트
- HTML
- 콘텐츠 영역
- HTTP 메시지 바디
- Content
- 응답 헤더
- CSS
- 서버
- 클라이언트와 서버 구조
- HTTP
- 경계선
- 카우치코딩
- border
- IP
- 안쪽 여백
- 협업프로젝트
- padding
- 클라이언트
- connectionless
- 요청 헤더
- 박스모델
- 바깥쪽 여백
- 프로토콜
- URL
- 6주포트폴리오
- 선택자
- HTTP 메시지
- Today
- Total
정리하고 기록하며 성장하는
인터넷 통신 본문
인터넷에서 서버와 클라이언트는 어떻게 통신할까?
서버: 네트워크에 연결된 컴퓨터들 중 서비스를 제공하는 쪽
클라이언트: 네트워크에 연결된 컴퓨터들 중 서비스를 받는 쪽
IP 주소의 등장 배경
서버와 클라이언트는 인터넷 망을 통해 통신하는 데 인터넷 망이 복잡하다
복잡한 인터넷 망에 규칙을 부여해 놓은 것이 IP 주소 이다
IP(Internet Protocol) 주소는 32비트 숫자로 구성되 있다
사람이 알아볼 수 있게 네 개의 8비트 숫자로 마침표로 구분하여 표시한다
클라이언트 와 서버 각각 IP 주소가 있어야 서로 통신할 수 있다
IP 주소를 사용하는 목적
지정된 IP 주소로 데이터를 주고받기 위해 사용한다
데이터를 주고 받을때 패킷(Packet)이란느 작은 단위로 분할 한 후 조고받는다
패킷은 자신이 어떤 IP 주소로 전달되어야 한느지 알수 있도록 어드레스(Address) 정보를 가지고 있다
서버와 클라이언트가 IP 주소를 사용하여 데이터를 주고받는 방법
1. IP 패킷에 출발지 IP(내 IP) 와 목적지 IP (받는 사람 IP)를 적는다
2. 인터넷 망이 IP 패킷에 IP와 메시지를 담아서 던진다
3. 노드끼리 IP패킷을 던지면서 최종적으로 목적지 IP 주소로 데이터가 정확히 도달하게 된다
단 , 요청할때랑 응답할때랑 서로 IP가 다른 곳으로 데이터가 전달될 수 도 있다
즉 , 요청 보낸 곳으로 응답이 도착하지 않을 수 도 있다
IP 프로토콜의 한계
1. 비연결성
클라이언트에서 서버로 데이터를 전송할 때 클라이언트가 서버의 상태를 확인할 수 없다
즉 , 서버가 서비스 불가능 상태인지 모르고 클라이언트가 패킷을 전송하게 되면 서버는
받지 못하게 된다
결국 IP 프로토콜은 대상 서버가 패킷을 받을 수 있는 상태인지를 모르는 상태로 패킷을 보내게 되는
문제점이 발생할 수 있다
2. 비신뢰성
클라이언트에서 서버로 패킷을 전달하는 중 , 서버에 문제가 발생할수 있다
이때 서버의 상태를 모르고 패킷을 보냈을때 중간에 패킷이 소실될 수 있다
또한 , 패킷을 보냈을때 패킷이 클라이언트에서 보낸 순서대로 서버에 도착하지 않을 수 있다
즉 , 패킷들이 중간에 다른 노드를 타게 될 수 있다
3. 같은 IP를 사용하여 통신하는 애플리케이션이 둘 이상인 경우 이들을 어떻게 구분할 것인지 데 대한 문제가 있다
'HTTP > 인터넷 네트워크' 카테고리의 다른 글
PORT 와 DNS (0) | 2021.12.18 |
---|---|
UDP (0) | 2021.12.18 |
IP프로토콜을 사용할때 IP 패킷에서 발생할 수 있는 문제를 해결하는 방법 (0) | 2021.12.18 |