✨3-Way Handshake TCP 통신 프로토콜 에 따라 두 호스트 간의 연결을 세단계로 설정한것. 클라이언트, 서버 모두 데이터를 전송할 준비가 되었다는 것을 보장하기 위한 것이다 연결 시 TCP 데이터 전송에 사용할 시퀀스 번호를 정의한다. (가상의 통신로를 확보하기 위해) TCP 패킷의 TCP 플래그 부분이 활용된다(CWR,ECE,URG,ACK,PSH,SYN,FIN) ✨3-Way Handshake 순서 1.연결 확립 요청 SYN(Synchronize) 클라이언트 ->서버 SYN의 비트가 활성화되어 1 바뀐 세그먼트를 전송 -SYN를 1로 설정 -Sequence Number는 클라이언트의 최초 순서 번호(client_isn)로 설정 (SYN 연결이 이루어지도록 요청하는 의미) 2.연결 확립에 대한..
Computer Science/Server&Network
✨OSI 모형(Open Systems Interconnection Reference Model) OSI 모형(Open Systems Interconnection Reference Model)은 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다. (개념적 모델로 실제 통신에서는 구현되지는 않음) ✨TCP(Transmission Control Protocol) 서버와 클라이언트간에 데이터를 신뢰성 있게 전달하고 전송하기 전에 데이터 전송을 위한 연결을 만드는 연결지향 프로토콜이다. (전송프로토콜이다.) 오류제어,연결 지향,신뢰성,흐름 제어,다중화 의 특징들을 가진다. ✨IP(Internet Protocol) 송신 호스트와 수신 호스트가 패킷 교..
✨패킷(packet) 정보 기술에서 패킷 방식의 컴퓨터 네트워크가 전달하는 데이터의 형식화된 블록이다. 패킷은 제어 정보(헤더)와 사용자 데이터(페이로드)로 이루어진다. 헤더(Header) 페이로드(Payload) 데이터를 전송하기 위한 정보 전송하고자 하는 실제 데이터 ex)소스 주소,대상 주소, 버전, TTL, 프로토콜, 헤더 체크섬 ex)보내고자한 데이터 예시) IP 패킷의 헤더 (https://ko.wikipedia.org/wiki/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC_%ED%8C%A8%ED%82%B7) 🎈참고자료 https://ko.wikipedia.org/wiki/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC_%ED%8C%A8%ED%82%B7 h..
✨DNS(Domain Name System) 숫자로 된 인터넷 프로토콜 주소 대신 인터넷 도메인 이름과 검색 가능한 URL을 사용하여 웹사이트에 접속하는 것을 가능하게만드는 시스템 client는 public 혹은 local DNS 서버에게 도메인 주소를 입력하면 Root DNS 서버 -> TLD(Top-level DNS)서버 ->SLD(SECOND - LEVEL DNS)서버 순으로 서버를 접속하여 해당 도메인 주소를 IP주소를 response 받는다. 🎈참고자료 https://hanamon.kr/dns%EB%9E%80-%EB%8F%84%EB%A9%94%EC%9D%B8-%EB%84%A4%EC%9E%84-%EC%8B%9C%EC%8A%A4%ED%85%9C-%EA%B0%9C%EB%85%90%EB%B6%80%ED..
✨IP 주소(Internet Protocol address) 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신을 하기 위해서 사용하는 특수한 번호이다. 네트워크에 연결된 장치(host)가 라우터이든 일반 서버이든, 모든 기계는 이 특수한 번호를 가지고 있어야 한다. IPv4주소는 8비트씩 4블럭,32비트 숫자로 구성되며, 보통 점 표기법으로 작성한다. IPv6주소는 16비트씩 8개의 블럭으로 이루어져 있는 주소체계이다. 🎈참고자료 https://ko.wikipedia.org/wiki/IP_%EC%A3%BC%EC%86%8C https://www.akamai.com/ko/glossary/what-is-an-ip-address
✨클라이언트 서버 모델(client–server model) 서비스 요청자인 클라이언트와 서비스 자원의 제공자인 서버 간에 작업을 분리해주는 분산 애플리케이션 구조이자네트워크 아키텍처 네트워크(Newwork) 클라리언트와 서버가 정보를 주고 받을수있게하는 다리 역할 서버(Server) 서비스를 제공하는 컴퓨터 클라이언트(Client) 서비스를 사용하는 컴퓨터 클라이언트는 서버에 요청(request)하고 서버는 클라이언트의 요청에 응답(response)한다. 🎈참고자료 https://velog.io/@hahan/%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8Client-vs-%EC%84%9C%EB%B2%84Server https://ko.wikipedia.org/wiki/..
프로토콜(Protocol) 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계 프로토콜 종류 계층 프로토콜 응용(Application) HTTP, SMTP, FTP, Telnet 표현(Presentation) ASCII, MPEG, JPEG, MIDI 세션(Session) NetBIOS, SAP, SDP, NWLink 전송(Transport) TCP, UDP, SPX 네트워크(Network) IP, IPX 데이터 링크(Data Link) Ethernet, Token Ring, FDDI, Apple Talk 물리(Physical) 없음 HTTP (HyperText Transfer Protocol) 인터넷 상에서 정보를 주고받을 수 있는 프로토콜 1.주로 HTML 문서를 주고받는 데에..
✨REST(Representational State Transfer) 웹 서비스를 위한 아키텍처 스타일 중 하나 1.웹 애플리케이션 상에 존재하는 모든 리소스에 대해 고유의 URI를 부여 2.HTTP Method(GET, POST, PUT, DELETE)를 이용해 리소스에 대해 CRUD 명령을 적용 3.서버-클라이언트 구조, 무상태성,캐시 가능,일관된 인터페이스,자체적인 표현 구조,계층 구조를 가진다 아키텍쳐: 시스템 구성 및 동작 원리를 나타내는 것(서비스의 동작 원리를 나타내는 것 ) ✨API(Application Programming Interface) API는 컴퓨터나 컴퓨터 프로그램 사이의 연결이다. 일종의 소프트웨어 인터페이스이며 다른 종류의 소프트웨어에 서비스를 제공한다. 이러한 연결이나 인..