local area network은 가까운 거리에 위치한 호스트로 구성된 네트워크이다. 호스트 간의 간격이 가깝기 때문에 데이터를 브로드캐스팅 방식으로 전송한다.버스형은 공유 버스 하나에 여러 호스트를 직접 연결한다. 물리적으로 전송 매체를 공유하기 때문에 임의의 호스
OSI 7계층 데이터 이동 과정 전송 데이터는 송신 호스트의 응용계층에서 시작해 하위 계층으로 순차적으로 전달되어, 최종적으로 물리 계층에서 수신 호스트에 전달된다. 수신 호스트에서는 데이터를 상위 계층으로 순차적으로 이동시켜 응용계층까지 보내준다. 데이터가 하위 계
CSMA/CD Carrier Sense Multiple Access with Collision Detection (이더넷, 초고속 인터넷, 광 랜, IEEE 802.3) 충돌 감지 기능을 사용해 전송 과정에서 충돌 여부를 확인한다. 일단 호스트가 충돌을 감지하면 진행
네트워크 계층의 기본 기능은 송수신 호스트 사이의 패킷 전달 경로를 선택하는 라우팅이다. 네트워크의 특정 지역에 트래픽이 몰리는 현상을 다루는 혼잡 제어와 라우터 사이의 패킷 중개 과정에서 다루는 패킷의 분할과 병합이다.IP 프로토콜은 Connection-less 방식
Process-to-Process Delivery transport layer는 프로세스에서 프로세스로 패킷을 전달하는 역할을 한다. Client/Server Paradigm 가장 흔한 process-to-process 통신방법은 client/server를 이용하는 방
connectionless, unreliable transport protocol이다.=> 이것은 호스트 대 호스트 통신 대신 프로세스 대 프로세스 통신을 제공하는 것 외에는 IP 서비스에 아무것도 추가하지 않는다.최소 오버헤드를 사용하는 매우 간단한 프로토콜이다.=>
TCP는 connection-oriented protocol이다. 데이터를 보내기 위해 두개의 TCP 사이에 가상의 연결을 생성한다.TCP는 흐름 및 오류 컨트롤을 한다.전송 및 수신 프로세스가 동일한 속도로 데이터를 생성하고 소비하지 않을 수 있기 때문에 TCP는 저
소켓이란 어플리케이션이 뭔가 데이터를 보내고 받을 때 양방향 통신을 하게 해주는 끝점이다. 따라서 어플리케이션은 소켓을 열고 소켓에게 정보를 주면 그 정보가 상대방 컴퓨터의 어플리케이션까지 가고 상대방 컴퓨터의 어플리케이션이 보낸 정보를 다시 소켓을 통해서 받는다.소켓
프로토콜의 위치 Kernel VS Application 과거 => 전통적인 인터넷 프로토콜은 운영체제 내부 커널에 위치 현대 => 운영체제 상위의 어플리케이션 계층으로 주로 제공 위치에 따른 장단점? 성능 측면 운영체제 내부 커널에 위치한 프로토콜의 경우 믿을 수 있고
HTTP는 HTML문서와 같은 리소스를 가져오기 위한 클라이언트-서버 프로토콜입니다.client <-> proxy <-> proxy <-> server사용자를 대신하여 작동하는 모든 도구클라이언트가 요청한 대로 문서를 제공하는 서버.웹 브라우저와 서버
JSON(Javascript Object Notaion)은 Javascript 객체 구문을 기반으로 구조화된 데이터를 표현하기 위한 표준 텍스트 기반 형식이다. 일반적으로 웹 애플리케이션에서 데이터를 전송하는 데 사용된다. JSON은 문자열로 존재한다.이와 같은 방법으
api 설계 - post 기반회원 목록 /members -> GET회원 등록 /members -> POST회원 조회 /members/{id} -> GET회원 수정 /members/{id} -> PATCH,PUT,POST회원 삭제 /members/{id} -> DELET
캐시 유형 개인 캐시 일반적으로 브라우저 캐시인 특정 클라이언트에 연결된 캐시. 저장된 응답은 다른 클라이언트와 공유되지 않으므로 개인 캐시는 해당 사용자에 대한 개인화된 응답을 저장할 수 있다. 공유 캐시 클라이언트와 서버 사이에 위치하며 사용자 간에 공유할 수 있
representational state transfer의 줄임말로자원(RESOURCE) - URI행위(Verb) - HTTP METHOD표현(Representations)로 이루어져있다.uniform interface클라이언트와 서버 간의 인터페이스를 정의. 아키텍처
RPC(Remote procedure call) 분산 네트워크 환경에서 원격지 컴퓨터의 함수를 호출함 컴퓨터를 연결하는 RPC 프로토콜이 필요함 어플리케이션이 자신의 컴퓨터에서 함수를 호출하도록 하는 경험을 제공하는 stub과 IDL(interface definitio
client가 server로 복수 request 전송시, server는 요청 받은 순서대로 response를 보내야 함server가 중간 response 작성에 문제가 있는 경우, 후속 요청들은 모두 client에 전송되지 못하고 지연 됨http/1.1의 헤더에는 많은
줄어든 지연 시간응답 다중화 지원HTTP 헤더 필드 압축 통한 프로토콜 오버헤드 최소화요청 별 우선순위 지정을 추가함서버 푸시기존 어플리케이션의 수정 없는 지원일반 텍스트를 사용하는 HTTP/1.x와 달리 HTTP/2는 더 작은 메시지와 프레임으로 분할되며, 바이너리
QUIC은 UDP 위에 새로운 계층을 추가함으로써 신뢰성을 제공한다. 추가된 계층은 TCP에 존재하는 패킷 재전송, 혼잡 제어, 속도 조정 및 다른 기능들을 제공한다.QUIC 연결은 두 QUIC 엔드포인트 사이의 대화이다QUIC의 연결 설정은 버전 협상, 암호화, 전송
statelessness: 각 요청에는 처리를 위해 필요한 모든 정보가 포함되어야 한다. 이 원칙은 서비스의 확장성을 향상시킨다.client-server 구조: 클라이언트와 서버는 독립적으로 작동해야 한다. 클라이언트는 사용자 인터페이스와 사용자 관련 작업에, 서버는
웹 콘텐츠의 캐싱 동작을 제어주요 디렉티브들: \- public: 응답이 공개 캐시에 저장될 수 있음을 나타냄private: 응답이 특정 사용자를 위한 것이며, 공개 캐시에 저장될 수 없음을 나타냄no-cache: 캐시된 데이터를 사용하기 전에 원본 서버에 재검증이