728x90
반응형
인터넷 통신
- 물리적 거리가 가깝다면, 단순히 물리 선을 이용해서 통신할 수 있다.
- 하지만, 지구 반대편에 있는 eric 에게 메세지를 보내고자 한다면..? 물리적인 선으로 연결하기엔 한계가 있다.
- 복잡한 인터넷 망의 노드들을 지나가야한다.
IP
- 이를 해결하기 위해 인터넷 주소인 IP를 이용한다.
- 패킷이라는 통신 단위로 데이터 전송이 가능하다.
- IP 패킷정보는 출발지 IP 및 PORT, 도착지 IP 및 PORT, 전송 순서 등을 감싸 전송 가능하다.
- 하지만 패킷을 받을 주체가 연결되어있지 않거나, 서비스 불능인 상황여부에 관계 없이 패킷을 전달하는 문제가 있다.
- 중간에 패킷이 사라지거나, 받는 입장에서 순서대로 패킷을 받지 못할수도 있다.
TCP
- 이를 해결하기 위해 TCP(전송 제어 프로토콜)을 이용한다.
- 개념적으로 연결되어있도록 지원해주는 방법이다.
- 철수 : SYNC 보내고 -> 영희 : ACK + SYNC 보내고 -> 철수 : ACK + Date 보내는 방식으로 지원된다.
- 데이터 전달이 보증되고, 순서를 정해서 보내기 때문에 순서가 보장된다.
PORT
- 게임하면서 웹 서핑하는 등 같은 IP에 두개 이상의 서버와 통신하고자 할 때 패킷 컨트롤을 도와준다.
- 127.0.0.1 : 8080 or 8081 등으로 구분해서 다른 종류의 정보를 잘 전달할 수 있도록 돕는다.
- 하지만 IP + PORT 조합은 기억하기가 어렵다.. 또한 IP가 변동될 수 있다는 점이 문제다.
DNS
- 이를 해결하기 위해 DNS 매핑 테이블에 IP를 등록해준다.
- ex) 203.242.35.53 보다 www.naver.com이 외우기가 더 쉽다.
- 도메인 명을 DNS 서버에 요청하고, RESPONSE IP로 TCP/UDP 요청을 진행하게 된다.
728x90
반응형
'Dev' 카테고리의 다른 글
[Spring] 의존성 주입(DI) 에 대해 알아보자 - 1 / 개요, Bean 정의 (0) | 2022.02.28 |
---|---|
13. 기술면접 전 보고가면 좋은 내용 공유 2 (0) | 2021.04.19 |
11. 기술면접 전 보고가면 좋은 내용 공유 (0) | 2021.04.06 |
10. [자바] 자바 개발자 면접 질문 정리 (0) | 2021.04.02 |
9. [SSO] Keycloak User Storage SPI 번역해보기 - 2 (0) | 2020.10.13 |