[컴퓨터 네트워크] 2강 - ip, port, sorket, http

seo young park·2022년 3월 10일
0

CS

목록 보기
2/6
post-thumbnail

💡 해당 포스트는 kocw 이석복 교수님의 컴퓨터 네트워크 강의를 듣고 작성하였습니다.

Caravan analogy


(그림은 패킷과 딜레이를 차와 톨게이트에 비유했다.) 10비트짜리 패킷이 두 번째 라우트까지 도달하는 과정은 어떻게 진행될까? 먼저 패킷의 앞부분들은 빛의 속도로 링크를 통해 다음 라우트로 이동하고, 뒷부분들은 전송 중이다. 이 때 패킷은 한 묶음이기 때문에 앞부분은 나머지 부분들이 올 때까지 기다리게 된다.

layer

  • L4 Application Layer - http
  • L3 Transport Layer - tcp, udp
  • L2 Internet Layer - ip
  • L1 Network Access Layer - wifi, lte, 유선이더넷

하위 계층에서 상위기층으로 서비스를 제공

Client and server

  • Server
    • 영구적인 주소가 가진다.
    • 항상 켜져 있어야한다.
  • Client
    • 동적 IP 주소를 가진다.
    • 서버와 통신한다.

네트워크 상에서 다른 피시에 접속하기 위해 pc 주소를 알아야한다.

  • IP(internet protocol address)

    • 인터넷 상에서 사용되는 주소 체계
    • 네 덩이의 숫자로 구분된다.(ipv4)
  • Port

    • 어플리케이션(프로세스) 상호 구분을 위해 사용하는 번호
    • IP주소가 가리키는 PC에 접속할 수 있는 채널
    • 중복사용불가
    • 22:SSH, 80:HTTP, 443:HTTPS
  • socket
    - 네트워크 상에서 두 개의 프로그램이 양방향 통신을 할 수 있도록 양쪽에 생성되는 링크 단자

    • 호스트(네트워크에 연결된 모든 장치를 node, ip 주소가 할당된 node를 host)
    • ip주소, 포트 넘버, 프로토콜, 세 가지가 필요.
    • 하나의 프로세스는 같은 프로토콜-ip주소-포트넘버를 가지는 수십만 개의 소켓을 가질 수 있음

Transport layer

  • TCP / UCP
  • TCP / UCP 모두 초창기에 data integrity를 위해 고안된 프로토콜이라 나머지 기능을 제공하지 않는다.
    • data integrity: 내가 보내는 데이터가 유실되지 않았으면 - 현재 tcp에서 이 기능만 제공함
    • timing: 데이터 빨리도착했으면 좋겠음
    • throughput: 내가 보내는 데이터가 최소 1기가비트 용량이 나왔으면
    • security: 내가보내는 데이터에 대한 보안

WEP and HTTP

  • http: hypertext transfer protocol

  • http는 TCP를 이용해 (순차적으로 손실되지 않게) 메세지를 교환하기 때문에 TCP 커넥션을 생성해야함

  • http is stateless
    - 각각 http 통신은 독립적이기 때문에 이전의 통신내용을 기억하지 않음.

    • 매 통신마다 모든 필요한 정보를 보내야 함
    • 그래서 필요한 것이 토큰, 쿠키, 세션, 로컬 스토리지 등
  • 2가지 TCP 연결 방식

    • non-persistent http
      • http 메세지 주고 받으면 TCP 커넥션 끊어짐
      • TCP 커넥션은 양쪽에서 끊어줘야 하는 데, non-persistent http는 서버에서 클로즈함.
    • persistent http
      • 추가적으로 요청할 오브젝트가 있는 경우, TCP 커넥션을 끊지않고 재사용
      • 브라우저들 디폴트 설정

0개의 댓글