인프런의 모든개발자를 위한 HTTP 웹 기본 지식 강의를 들은 내용을 정리하는 포스트입니다.
IP
인터넷 프로토콜 역할
- 지정한 주소에 데이터를 전달한다.
- 패킷(Packet)이라는 통신단위로 데이터 전달.
인터넷 프로토콜 한계
- 비연결성 (패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송)
- 비신뢰성 (중간에 패킷이 사라지면? 패킷이 순서대로 안오면?)
- 프로그램 구분 (같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면?)
서버가 죽어있는데 패킷을 보내거나
광활한 인터넷 망의 특정 노드에서 패킷이 소실되거나
패킷전달순서가 달라지거나...(패킷별로 타고 이동하는 노드가 다를수 있다고 한다.)
TCP UDP
위에서 보았듯 IP 만으로는 안전하게 통신이 어렵다 => TCP UDP 활용
인터넷 프로토콜에는 4가지 계층이 아래와 같이 존재하는데, 각 계층을 거치면서 서버에 보낼 메세지가 완성되어진다.
(OSI 7계층과 대응됨. 더 자세한 내용은 모두의 네트워크 책 참고 가능)
TCP의 특징
- 연결지향 - TCP 3 way handshake (가상 연결)
- 데이터 전달 보증
- 순서 보장
PORT
하나의 컴퓨터에는 하나의 아이피주소가 부여된다. 그런데 해당 컴퓨터에서 여러개의 작업을 동시 수행하면(게임하면서 음악듣고 화상채팅하기) 한개의 아이피주소에서 여러가지 요청이 나올 텐데......
그렇다면 각 패킷에는 아이피 주소말고도 어떤 애플리케이션이 어떤 패킷을 필요로 하는지에 대한 정보가 필요하지 않을까? => 그게 바로 포트넘버!
DNS
일반적으로 IP 주소는 숫자로 되어있어서 기억하기 어렵고 변경되기도 쉽다. 따라서 사람이 기억하기 쉽게 도메인명을 이용해서 서버에 접속할수있게 하는것이 DNS (Domain Name Service)
https://developer.mozilla.org/ko/docs/Web
개발자를 위한 웹 기술 | MDN
웹(World Wide Web)의 개방성은 웹사이트나 온라인 애플리케이션을 제작하려는 사람들에게 많은 기회를 제공합니다. 하지만 그 사용 방법을 알아야 웹 기술을 잘 활용할 수 있습니다. 아래의 링크
developer.mozilla.org
'TIL > 모든 개발자를 위한 HTTP 웹 기본 지식' 카테고리의 다른 글
6.HTTP 상태코드 (0) | 2021.06.23 |
---|---|
5. HTTP 메서드 활용 (0) | 2021.06.23 |
4. HTTP 메서드 (0) | 2021.06.22 |
3. HTTP 기본 (0) | 2021.06.21 |
2. URI와 웹 브라우저 요청 흐름 (0) | 2021.06.20 |
댓글