지정한 IP 주소에 데이터 전달패킷(Packet)이라는 통신 단위로 데이터 전달헤더에 출발지, 목적지 ip주소 등 정보를 저장비연결성패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷이 전송됨비신뢰성패킷 손실 : 중간에 패킷이 사라질 수 있음패킷 전달 순서 문제 발생
4계층 - 애플리케이션 계층 - HTTP, FTP 3계층 - 전송 계층 - TCP, UDP 2계층 - 인터넷 계층 - IP 1계층 - 네트워크 인터페이스 계층 전송 제어 프로토콜(Transmission Control Protocol)연결 지향 - TCP 3 way ha
하나의 클라이언트 PC가 여러개의 서버랑 통신여러개의 패킷들이 클라이언트 IP로 전송될텐데 어떻게 구분?ex) IP: 아파트 / PORT: 몇동 몇호0 ~ 65535 할당 가능0 ~ 1023 : 잘 알려진 포트, 사용하지 않는 것이 좋음FTP - 20, 21TELNET
도메인 네임 시스템(Domain Name System)도메인 명을 IP 주소로 변환DNS 서버에 도메인 명을 주고 도메인 명에 맞는 IP주소를 요청DNS 서버에서 IP주소 응답해당 IP주소로 접속
Uriform : 리소스 식별하는 통일된 방식Resource : 자원, URI로 식별할 수 있는 모든 것Identifier : 다른 항목과 구분하는데 필요한 정보URL- Locator : 리소스가 있는 위치를 지정URN - Name : 리소스에 이름을 부여URN 이름만
URL 입력 DNS 조회입력된 URL에서 호스트 명을 가지고 DNS 서버에서 IP 주소 조회TCP 연결서버와 TCP/IP 연결을 수립서버 요청웹 서버에 HTTP 요청 패킷을 보냄서버 응답HTTP 요청을 처리하고, HTTP 응답 메시지를 생성웹페이지 렌더링브라우저는 서버
HTML, TEXT, IMAGE, 음성, 영상, 파일, Json, XML 등 거의 모든 형태의 데이터 전송 가능(5) 단순함, 확장 가능
Request Response 구조클라이언트는 서버에 요청을 보내고, 응답을 대기서버가 요청에 대한 결과를 만들어서 응답
상태 유지중간에 다른 점원으로 바뀌면 안된다.무상태중간에 점원이 바뀌어도 된다.갑자기 클라이언트 요청이 증가해도 서버를 대거 투입할 수 있다.무상태는 응답 서버를 쉽게 바꿀 수 있다 → 무한한 서버 증설 가능서버가 클라이언트의 상태를 보존 X장점 : 서버 확장성 높음단
서버는 연결을 계속 유지, 서버 자원 소모서버는 연결 유지 X, 최소한의 자원 유지HTTP는 기본이 연결을 유지하지 않는 모델실제 서버에서 동시에 처리하는 요청은 수십개 이하로 매우 작음서버 자원을 매우 효율적으로 사용할 수 있음TCP/IP 연결을 새로 맺어야 함 -
요청 : request-line응답 : status-linerequest line = method (공백) request-target (공백) HTTP-version (엔터)mothod서버가 수행해야 할 동작 지정GET : 리소스 조회POST : 요청 내역 처리requ
리소스 식별이 중요리소스? 회원을 등록, 수정, 조회하는게 리소스가 아니라 회원 자체가 리소스회원 목록 조회 /members회원 조회 /members/{id}회원 등록 /members/{id}회원 수정 /members/{id}회원 삭제 /members/
GET : 리소스 조회POST : 요청 데이터 처리, 주로 등록에 사용PUT : 리소스를 대체, 해당 리로스가 없으면 생성PATCH : 리소스 부분 변경DELETE : 리소스 삭제리소스 조회서버에 전달하고 싶은 데이터는 query를 통해 전달메시지 바디를 사용해서 데이
리소스를 대체리소스가 이미 있으면 완전히 대체리소스가 없으면 새로 생성즉 덮어쓰기클라이언트가 리소스 위치를 알고 URI 지정POST와의 차이점⇒ 완전히 대체한다!즉 이전의 리소스를 삭제하고 갈아치운다.리소스를 완전히 대체하기 때문에 모든 필드의 값을 지정해야한다.리소스
(1) 안전(Safe Methods)(2) 멱등(Idempotent Methods)(3) 캐시가능(Cacheable Methods)호출해도 리소스를 변경하지 않는다.몇 번 호출하든 결과가 똑같다.GET : 한 번 조회하든, 두 번 조회하든 같은 결과가 조회된다.PUT