TCP, UDP에 들어가기 앞서 IP프로토콜 을 먼저 알아보자IP프로토콜 은 지정한 IP주소로 데이터를 전달할 수 있고, 패킷이라는 통신 단위로데이터를 전달할 수 있다.그러나 IP프로토콜에 한계점이 존재한다.비연결성패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷을
간단히 말하면 같은 IP 내에서 프로세스 구분만약 내가 PC를 가지고 게임도 하고 있고, 노래도 듣고있을 때 나는 여러 서버와 통신을 하고 있는 상황이다.이 상황에서 내 IP로 여러 패킷이 날라올 것이다.이를 해결하기 위해 PORT가 있다.즉, IP는 우리집 주소를 나
IP는 기억하기가 어렵고, IP는 변경될 수 있다.이를 해결해주고자 DNS(Domain Name System)가 있다.도메인 명을 IP주소로 변환해준다.ex) 도메인 명 : google.com / IP: 200.200.200.2
URI(Uniform Resource Identifier)은 리소스를 식별하는 통합된 방법이다.Uniform: 리소스 식별하는 통일된 방식Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음)Identifier: 다른 항목과 구분하는데 필요한 정보URI
HTTP > - HTTP(HyperText Transfer Protocol)는 하이퍼 텍스트 문서간의 링크를 통해서 연결할 수 있는 HTML을 전송하는 프로토콜이었다. 근데 지금은 모든 걸 HTTP프로토콜 에 담아서 전달한다. ex) HTML, TEXT, IMAGE,
클라이언트 서버 구조 >간단히 말하면 클라이언트가 요청을 보내고 서버가 응답을 한다. 그러나 이건 너무 대충이고.. 클라이언트와 서버를 개념적으로 분리한다. 비즈니스 로직과 데이터는 서버가 담당한다. 클라이언트는 UI와 사용성에 집중한다. . . . > 이렇게
HTTP는 무상태 프로토콜은 지향한다. > 무상태 프로토콜 이란, 서버가 클라이언트의 상태를 보존 하지 않는다. 일단 무상태를 보기 전, 상태 유지를 예를 들어 알아보자 > 아이폰을 사러 폰 가게에 와서 듣는 대화 내용이다. 고객 : 아이폰 14프로 얼마인가요?
만약 서버와 클라이언트가 연결을 계속 유지한다면 서버에 자원 소모가 많아진다. 그러나 연결 유지를 하지 않게 된다면 서버 입장에서는 최소한의 자원만 필요하게 된다. 비 연결성(Connectionless) HTTP는 기본적으로 연결을 유지하지 않는다. 일반적으로 초
그림으로 간단히 보자면 이렇다 시작라인(요청 메시지) start-line = request-line / status-line request-line = method SP(공백) request-target SP HTTP-version CRLF HTTP 메서드(GET
예를 들어 회원 목록 조회, 조회, 등록, 수정, 삭제와 같이 URI를 설계한다고 생각해보자 여기서 가장 중요한 것은 리소스 식별 이다. "그럼 리소스는 뭘까?" >여기서 회원 목록을 조회, 등록, 수정, 삭제하는 것은 리소스가 아니라 회원 자체가 리소스이다. 그래서
HTTP 메서드 종류(주요 메서드) >- GET : 리소스 조회 POST : 요청 데이터 처리 PUT : 리소스를 대체, 해당 리소스가 없으면 생성 PATCH : 리소스 부분 변경 DELETE : 리소스 삭제 GET >- 리소스 조회 서버에 전달하고 싶은 데이터는
HTTP 메서드 속성 >- 안전(Safe Methods) 멱등(Idempotent Methods) 캐시가능(Cacheable Methods) 안전(Safe Methods) >호출해도 리소스를 변경하지 않는다. 멱등(Idempotent Methods) > 한 번
데이터 전달 방식은 크게 2가지가 있다. >- 쿼리 파라미터를 통한 데이터 전송 GET 주로 정렬 필터(검색어) >- 메시지 바디를 통한 데이터 전송 POST, PUT, PATCH 주로 회원 가입, 상품 주문, 리소스 등록, 리소스 변경에 사용 정적 데이터
POST POST 방식에서 클라이언트는 등록될 리소스의 URI를 모른다. 회원 등록 -> /members -> POST POST/members 서버가 새로 등록된 리소스 URI를 생성해준다 HTTP/1.1 201 Created Location:/m
HTML FORM GET, POST만을 지원한다. AJAX 같은 기술을 사용해서 해결 가능 >HTML FORM은 GET, POST만 지원 컨트롤 URI GET, POST만 지원하므로 제약이 있음 이런 제약을 해결하기 위해 동사로 된 리소스 경로 사용 POST의 /ne
HTTP 상태 코드 는 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능이다. 200번대(Successful): 요청 정상 처리 > 200 OK (요청 성공) 201 Created (요청 성공해서 새로운 리소스가 생성됨 POST) 202 Accepted (
HTTP 헤더 >- HTTP 전송에 필요한 모든 부가정보 ex) 메시지 바디의 내용, 메시지 바디 크기, 압축, 인증, 요청 클라이언트, 서버 정보, 캐시 관리 정보.. 표준 헤더 필드가 많다. 필요시 임의의 헤더 추가 가능 >_과거 1999년 RFC2616가 폐기되
표현(Representation) Content-Type: 표현 데이터의 형식 Content-Encoding: 표현 데이터의 압축 방식 Content-Language: 표현 데이터의 자연 언어 Content-Length: 표현 데이터의 길이 표현 헤더는 전송 응답
협상 Accpet : 클라이언트가 선호하는 미디어 타입 전달 Accpet-Charset : 클라이언트가 선호하는 문자 인코딩 Accpet-Encoding : 클라이언트가 선호하는 압축 인코딩 Accpet-Language : 클라이언트가 선호하는 자연 언어 >협상 헤
전송 방식 >- 단순 전송 압축 전송 분할 전송 범위 전송 단순 전송 컨텐트 길이를 알 때 사용 압축 전송 컨텐트 인코딩이 추가된다. 분할 전송 컨텐트 길이를 넣으면 안됨(전체 길이를 예상할 수 없다.) 범위 전송 ![](https://velog.vel
일반 정보 From >- 유저 에이전트의 이메일 정보 일반적으로 잘 사용되지 않음. 검색 엔진 같은 곳에서 주로 사용 요청에서 사용 Referer 현재 요청된 페이지의 이전 웹 페이지 주소 A -> B로 이동하는 경우 B를 요청할 때 Referer:A를 포함해서
Host 요청에서 사용 필수적임 하나의 서버가 여러 도메인을 처리해야 할 때 하나의 IP 주소에 여러 도메인이 적용되어 있을 때 > 가상호스트를 통해 여러 도메인을 한번에 처리할 수 있는 서버 실제 애플리케이션이 여러개 구동될 수 있다. 이 때문에 만약 클라이언트가
쿠키 >- Set-Cookie: 서버에서 클라이언트로 쿠키 전달(응답) Cookie: 클라이언트가 서버에서 받은 쿠키를 저장하고, HTTP 요청시 서버로 전달 >HTTP는 무상태 프로토콜이라고 했다.(Stateless) 클라이언트가 요청과 응답을 주고 받으면 연결이
캐시 >웹 캐시란 자주 쓰이는 문서의 사본을 자동으로 보관하는 HTTP 장치이다. 캐시가 없을 때 >- 캐시가 없을 때는 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 매우 느리고 비싸며, 브라우저 로딩 속도가
캐시 시간 초과가 발생했을 때, 서버에 다시 데이터를 요청하면 두 가지 상황이 나타난다. 서버에서 기존 데이터를 변경함 서버에서 기존 데이터를 변경하지 않음 > 만약 2번 같은 경우에는 데이터를 전송하는 대신 저장해 두었던 캐시를 재사용할 수 있다. 이를 위해서 검
검증 헤더 >- 캐시 데이터와 서버 데이터가 같은지 검증하는 데이터 Last-Modified, ETag 조건부 요청 헤더 >- 검증 헤더로 조건에 따른 분기 If-Modified-Since: Last-Modified 사용 If-None-Match: ETag 사용 조건
Cache-Control(캐시 제어) Cache-Control: max-age 캐시 유효 시간, 초 단위 Cache-Control: no-cache 데이터는 캐시해도 되지만, 항상 원(origin)서버에 검증하고 사용 이 말은 중간에 있는 캐시서버에서
OSI 7계층의 물리계층과 데이터 링크 계층에 해당한다.물리적인 주소로 MAC을 사용한다.LAN, 패킷망, 등에 사용된다.OSI 7계층의 네트워크 계층에 해당한다. 통신 노드 간의 IP패킷을 전송하는 기능과 라우팅 기능을 담당한다.프로토콜 – IP, ARP, RARPO
국제표준화기구(ISO :International Organization for Standardization)에서 개발한 모델컴퓨터 네트워크 프로토콜 디자인과 통신을 계층을 나누어 설명한 것데이터 링크 계층의 프레임을 받고, 다음 장치에 구리나 광섬유(케이블) 또는 무선