백정탈의 개발 블로그
HTTP 웹 기본지식-1 본문
인터넷 프로토콜 4계층
TCP/Ip 계층 OSI 7계층
응용 계층 ---- 응용 계층 ---- HTTP, FTP
표현 계층
셰션 계층
전송 계층 ---- 전송 계층 ---- TCP, UDP
인터넷 계층 ---- 네트워크 계층---- IP
네트워크 인터 ---- 데이터링크 계층
페이스 계층 물리 계층
IP(Internet Protocol)
지정한 IP 주소(IP Address)에 데이터 전달
패킷(Packet)이라는 통신 단위로 데이터 전달
IP패킷 정보: 출발지IP, 목적지IP, 전송데이터
특징
비연결성: 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
비신뢰성: 패킷 소실 가능성, 패킷 순서 문제 발생
프로그램구분:같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면 구분이 힘듬
TCP(Transmission Control Protocol)
전송 제어 프로토콜
IP패킷 정보+ 출발지 PORT, 목적지 PORT 전송 제어, 순서, 검증 정보등등 전달
특징
연결지향 - TCP 3 way handshake (가상 연결) • 데이터 전달 보증 • 순서 보장
UDP(User Datagram Protocol)
사용자 데이터그램 프로토콜
데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름 , IP와 거의 같다. +PORT +체크섬 정도만 추가
DNS (Domain Name System)
도메인 명을 IP 주소로 변환
만약 요청 도메인 명이 aaa.com일때 ip주소로 응답하여 200.200.200.2로 변환 해준다.
URI(Uniform Resource Identifier) > URL(Uniform Resource Locator)
URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류될 수 있다"
URL 전체 문법
예시:https://www.google.com:443/search?q=hello&hl=ko
프로토콜(https) • 호스트명(www.google.com) • 포트 번호(443) • 패스(/search) • 쿼리 파라미터(q=hello&hl=ko)
scheme://[userinfo@]host[:port][/path][?query][#fragment]
[]-> 생략 가능한 문법
프로토콜== scheme: 어떤 방식으로 자원에 접근할것인가 하는 규칙 예) http,https,ftp
유저정보==[userinfo@]: URL에 사용자정보를 포함해서 인증
호스트명== host: 도메인명
포트==[:port]: 접속 포트,일반적으로 생략, 생략시 http는 80, https는 443
패스==[/path]: 리소스경로, 계층적 구조
쿼리 파라미터==[?query]: key=value 형태 , ?로 시작, &로 추가 가능 ?keyA=valueA&keyB=valueB
프레그먼트==[#fragment]: html 내부 북마크 등에 사용, 서버에 전송하는 정보 아님
HTTP
• HTML, TEXT
• IMAGE, 음성, 영상, 파일
• JSON, XML (API)
• 거의 모든 형태의 데이터 전송 가능
• 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용
특징
• 클라이언트 서버 구조
• 무상태 프로토콜(스테이스리스), 비연결성
• HTTP 메시지
• 단순함, 확장 가능
HTTP 메서드
• GET: 리소스 조회
• POST: 요청 데이터 처리, 주로 등록에 사용
• PUT: 리소스를 대체, 해당 리소스가 없으면 생성, 쉽게 이야기한 덮는다.
• PATCH: 리소스 부분 변경
• DELETE: 리소스 삭제
'HTTP' 카테고리의 다른 글
HTTP 웹 기본지식-2 (0) | 2023.03.05 |
---|