본문 바로가기
Dev

12. [면접질문 정리] 인터넷 네트워크

by VIPeveloper 2021. 4. 19.
반응형

인터넷 통신

  • 물리적 거리가 가깝다면, 단순히 물리 선을 이용해서 통신할 수 있다.
  • 하지만, 지구 반대편에 있는 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 요청을 진행하게 된다.
반응형