Computer Science/Network

인터넷 네트워크

코드몬스터 2023. 12. 24. 00:45
728x90

 

💡 본 내용은 인프런 사이트에서 김영한 강사님의 "모든 개발자를 위한 HTTP 웹 기본 직식" 강의를 정리한 내용입니다.

 

 

인터넷 네트워크 망을 통해서 통신을 주고 받기 때문에 네트워크 관련 기본 지식에 대해 공부한다고 생각하면 됩니다.

 

단, 네트워크에 대해 깊게 공부하면 정말 깊게할 수 있지만 웹 개발을 위한 기본 지식인 만큼 가볍게 보고 넘어가면 될 것을 생각한다.

 

만약 중간에 궁금한 부분들은 따로 공부를 더 하면 됩니다.

 

1️⃣ 인터넷 통신

자신의 컴퓨터에서 다른 사람에게 통신을 하기 위해서는 중간에 수 많은 거점(?)들을 통과하면서 데이터가 이동을 하게 된다.

 

 

 

2️⃣인터넷 프로토콜(IP)

패킷(packet) 은 네트워크 통신 정보 단위(?)라고 생각하면 된다. 패킷에 대해서도 깊게 공부하려면 따로 찾아보자!

 

클라이언트에서 ⑴출발지 IP, ⑵목적지 IP와 ⑶전송 데이터를 담은 패킷이 네트워크 망으로 넘어가면서 중간 노드에서 해당 패킷의 정보를 확인하고 전송 되게 된다.

 

반대로 서버에서도 클라이언트에게 보낼 때 똑같이 적용 된다.

 

IP 프로토콜의 한계

  • 비연결성
    패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
  • 비신뢰성
    중간에 패킷이 사라지면?
    패킷이 순서대로 안 오면?
  • 프로그램 구분
    같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면?

 

3️⃣ TCP, UDP

 

TCP 안에 전송 제어, 순서, 검증 정보 등의 내용이 있기 때문에 아래 TCP 에 대한 장점을 보장하게 된다.

 

전송 제어 프로토콜(Transmission Control Protocol)

  • 연결 지향 -TCP 3 way handshake (가상 연결)
    보내려고 하는 목적지 쪽에서의 서버가 살아있는지 서로 체크하는 과정이다.

  • 데이터 전달 보증
    전송한 데이터에 대해서 잘 받았는지 등의 응답을 해준다.

  • 순서 보장
    중간에 데이터가 잘 못 되면

 

사용자 테이터그램 프로토콜(User Datagram Protocol)

  • 연결 지향 3 way handshake X /  데이터 전달 보증 X / 순서 보장 X 
  • 대신, 단순하고 빠르다.

 

4️⃣ PORT

 

 

 

5️⃣ DNS

 

'Computer Science > Network' 카테고리의 다른 글

HTTP 프로토콜  (0) 2023.04.15
Web  (0) 2022.08.18
aws ec2 ssh 접속 오류  (0) 2022.08.05
네트워크 기초 - 실습  (0) 2022.07.14
네트워크 기초  (0) 2022.07.14