용어 | 정의 |
---|---|
Communication (통신) | 원하는 곳에 원격으로 데이터 송수신 |
HTTP (HyperText Transfer Protocol) | 하이퍼텍스트 전송 프로토콜 |
Protocol (프로토콜) | 통신 규약 |
HyperText | - 참조(하이퍼링크)를 통해 독자가 한 문서에서 다른 문서로 즉시 접근할 수 있는 텍스트 - 인터넷에 표시되는 문자열 일종의 텍스트 |
컴퓨터들 사이의 TCP/IP통신 프로토콜에 의해 데이터의 교환이 가능한 컴퓨터 네트워크(글로벌 정보 시스템)
구조
TCP/IP(Transmission Control Protocol / Internet Protocol)
소켓 통신
TCP/IP
TCP(Transmission Control Protocol)
소켓 포트 단위의 송수신 프로토콜 ⇨ 프로그램 레벨
Transport 영역에 소켓과 소켓 사이의 peer-to-peer 연결을 구현하는 프로토콜
역할 : 포트번호를 따라 소켓까지 전달, 데이터의 흐름을 책임짐
TCP | UDP | |
---|---|---|
정식명칭 | Transmission Control Protocol | User Datagram Protocol |
통신방식 | connection 기반 (연결형) 쌍방향 통신 프로토콜 | 비연결형 통신 프로토콜 |
장점 | - 전송속도가 TCP보다 빠름 - 음성, 영상 데이터 전송에 유리 |
IP(Internet Protocol)
TCP/IP 기반의 Application 프로토콜 : HTTP, HTTPS, FTP, SSH, DNS
TCP/IP 기반 구동 = IP주소와 포트번호를 가지고 통신한다는 뜻
Port Number
Web
HTTP : Web 통신 규약
HTTP는 요청(Request) 하고, 응답(Response) 하는 서버/클라이언트 모델을 따름
HTTP 메세지 구성 : request/status line, header, body
Request Method (요청 메소드)
Method | 정의 |
---|---|
GET | read, 정보를 요청 |
HEAD | 헤더 정보만 요청 |
POST | create, 정보를 생성, 변형 할 때 사용 |
PUT | update, 정보를 수정 |
DELETE | delete, 정보를 삭제 |
OPTIONS | 사용 가능한 메소드 확인 |
Response Code (응답 코드) - status line에 상태코드(status code)를 포함
코드 | 정의 |
---|---|
1xx | 조건부 응답 |
2xx | 성공 |
3xx | 리다이렉션 완료 |
4xx | 요청 오류(클라이언트에 문제가 있다는 뜻!) |
5xx | 서버 오류(서버에 문제가 있다는 뜻!) |
200 | - 서버 : 클라이언트 요청을 성공적으로 처리 - 웹 페이지 : 페이지 요청이 정상적으로 완료되면 반환 |
404 | 찾을 수 없음. 존재하지 않는 URL을 요청하여 페이지를 접속할 수 없을 때 반환하는 응답 코드 핵시름...🤬 |
Header (헤더)
URL(Uniform Resource Locator)과 URI(Uniform Resource Identifier)
http://opentutorials.org:3000/main
http://opentutorials.org:3000/main?id=HTML&page=12
API(Application Programing Interface) : 프로그램 간의 Interface
REST(Representational State Transfer) API(혹은 Restful API)
항목 | 쿠키 | 세션 |
---|---|---|
정의 | - HTTP 헤더를 기반으로 이루어지는 데이터 -"클라이언트 로컬(브라우저)"에 저장되는 Key-Value쌍의 작은 데이터 파일 | |
예시 | 내가 가지고 있는 cooki북 | 울랄라 스파에서 가지고 있는 정보 |
저장위치 | 로컬 | 로컬&서버 |
보안 | 탈취, 변조 가능 | ID값만 가지고 서버에도 저장됨 상대적으로 안전 |
Lifecycle | 브라우저 종류해도 파일로 남음 | 브라우저 종료시 세션 삭제 |
속도 | 빠름 | 느림 |