인터넷 네트워크

업데이트:

인터넷 프로토콜 스택의 4계층

  • 애플리케이션 계층 - HTTP, FTP
  • 전송 계층 - TCP, UDP
  • 인터넷 계층 - IP
  • 네트워크 인터페이스 계층

IP(인터넷 프로토콜)

  • 지정한 IP 주소에 데이터 전달
  • 패킷이라는 통신 단위로 데이터 전달
  • 목적지 서버를 찾는 다고 생각하면 된다.

IP 패킷 정보

  • 출발지 IP
  • 목적지 IP 정보
  • 메시지..등

IP 프로토콜의 한계

  • 비연결성
    • 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
  • 비신뢰성
    • 중간에 패킷이 사라지거나 순서대로 오지 않을경우 문제 발생
  • 프로그램 구분
    • 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 두개일 경우 문제 발생

TCP

통신 순서(채팅 프로그램)

  1. 프로그램이 메시지를 생성
  2. SOCKET 라이브러리를 통해 전달
  3. TCP 정보 생성, 메시지 데이터 포함
  4. IP 패킷 생성, TCP 데이터 포함
  5. 각 계층에서 정보를 씌우듯 전송함

TCP/IP 패킷 정보

  • 출발지 PORT
  • 목적지 PORT
  • 전송 제어
  • 순서
  • 검증 정보…
  • 전송 데이터

TCP 특징

연결지향 - TCP 3 way handshake(가상 연결)

  1. 클라이언트에서 서버로 SYN(접속 요청)메시지 전송
  2. 서버에스 클라이언트로 SYN(접속 요청) + ACK(요청 수락) 메시지 전송
    • 요청 수락과 함께 클라언트로 접속 요청을 보낸다.
  3. 클라이언트에서 서버로 ACK(요청 수락) 메시지 전송
  4. 데이터 전송

데이터 전달 보증

  1. 데이터 전송
  2. 데이터 전송 결과 응답

순서 보장

  • 패킷 전송시 순서가 맞지 않는 경우 해당 패킷부터 재 요청 처리 됨

신뢰할 수 있는 프로토콜

현재는 대부분 TCP 사용

UDP

  • 하얀 도화지에 비유(기능이 거의 없음)
  • 연결지향 X
  • 데이터 전달 보증 X
  • 순서 보장 X
  • 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름
  • 정리
    • IP와 거의 같다. +PORT +체크섬 정도만 추가
    • 애플리케이션에서 추가 작업 필요

PORT

  • 같은 IP 내에서 프로세스 구분
  • IP는 목적지 서버를 찾는다면 PORT는 서버의 애플리케이션을 찾는다.
    • IP는 아파트 PORT는 동, 호수
  • 0 ~ 65535 할당 가능
  • 0 ~ 1023 : 잘 알려진 포트로 사용하지 않는 것이 좋음
    • FTP -20,21
    • TELNET - 23
    • HTTP - 80
    • HTTPS - 443

DNS

  • IP에 도메인 명을 지정할 수 있다.
  • IP는 변경되어도 DNS를 통해 접속 할수 있다.

태그:

카테고리:

업데이트:

댓글남기기