본문 바로가기
CS이론/네트워크

[네트워크] 컴퓨터네트워크 기본2

by limew 2024. 1. 6.

 

이석복 교수님 강의

네트워크 계층

강의에서 네트워크 계층은 5개로 구분되어 있다.

네트워크 계층별로 갖는 대표적인 프로토콜은 다음과 같다.

  • Application 계층
    • 대표 프로토콜: HTTP
  • Transport 계층
    • 대표 프로토콜: TCP/UDP (TCP가 가장 대표적이다)
  • Network 계층
    • 대표 프로토콜: IP
  • Data link 계층
    • 대표 프로토콜: WIFI, LTE/3G, Ethernet
  • Physical 계층

 

클라이언트와 서버

클라이언트

  • 고정된 IP주소를 가지지 않아도 된다 (IP주소란 컴퓨터의 주소)

서버

  • 24시간 항상 동작해야한다
  • 고정된 IP를 가져야한다 (예를 들어 클라이언트는 학생들, 서버는 교수님, 학생들이 교수님을 찾아가야함)

 

각 컴퓨터들은 서로의 주소를 알아야 연결 할 수 있다

주소 = IP + port

 

그럼 예를 들어 웹브라우저 상에서 www.naver.com:80을 입력하면 DNS를 통해 ip주소로 변환된 뒤 접속할 수 있다

=> 왜 모든 웹서비스들이 공통된 포트로 80을 쓸까?

=> DNS는 IP주소만 번역해주는데 모든 서비스가 다른 포트를 사용하면 그걸 누가 외웁니까?  찾아가기 쉽게 모두 80을 쓰죠!

 

전송계층의 희망사항

  • Data Integrity : 데이터가 유실되지 않고 도착 
  • Timing: 시간 안에 도착 (시간 기준) ex) 음성전화
  • Throughput : 한 번에 확 가버려도 됨 (양 기준) - ex) 다운로드
  • security

현재 TCP에서는 Data Integrity 만 제공을 해준다. UDP는 제공도 안 함

 

HTTP

  • Hyper Text Transport Protocol
  • 하이퍼텍스트(중간에 링크가 있는 텍스트)를 전달하는 프로토콜
  • Stateless (요청이 들어오면 응답을 하고 끝 기억하지 않는다)
  • TCP 연결을 한 뒤 request, response
    • non-persistent: 주고받고 끊음 (네이버 기사의 10개의 그림 파일을 요청할 때마다 연결해야함)
    • persistent: 끊지 않고 재사용 (실제 웹브라우저)