Tech Interview/Network

Tech Interview/Network

[Network] 웹 통신의 큰 흐름

✔️ 웹 통신의 큰 흐름 웹 통신의 큰 흐름 클라이언트 주소창에 특정 URL 값을 입력 브라우저 URL에 입력된 값에 따라 DNS 서버를 조회하여 IP 주소 획득 브라우저 내부에서 결정된 규칙에 따라 HTTP Request 메시지 생성 만들어진 메시지를 웹 서버로 전송 프로토콜 스택 브라우저로부터 메시지를 받아 패킷 속에 저장 그리고 수신처 주소 등의 제어 정보를 덧붙여 LAN 어댑터로 전송 이후 통신 중 오류가 발생했을 때, 제어 정보를 사용하여 고쳐 보내거나, 각종 상황을 조절하는 역할을 하게 됨 LAN 어댑터 전달 받은 패킷을 다음 홉의 MAC 주소를 붙인 전기신호로 변환한 후 송출 스위칭 허브 (스위치, 허브) LAN 어댑터가 송신한 프레임이 스위칭 허브를 경유 라우터 스위칭 허브를 경유한 프레임..

Tech Interview/Network

[Network] DNS

✔️ DNS DNS란? Domain Name System 사용자가 숫자로 된 인터넷 프로토콜 주소 대신 인터넷 도메인 이름과 검색 가능한 URL을 사용하여 웹 사이트에 접속하는 것을 가능하도록 함 퍼블릭 DNS와 프라이빗 DNS가 존재 퍼블릭 DNS는 인터넷 서비스 제공업체 ISP가 기업에 IP 레코드를 제공하고, 이러한 레코드는 일반 대중에게 공개되어 네트워크에 상관없이 누구나 액세스할 수 있음 프라이빗 DNS는 회사의 방화벽 뒤에 존재하며 내부 사이트의 레코드만을 보관하므로 프라이빗 네트워크 외부에서 액세스할 수 없음 DNS의 작동 방식 사용자가 도메인 이름 또는 URL을 브라우저에 입력하면 DNS Resolver는 자신의 캐시에 해당 도메인 이름에 대한 IP 주소가 저장되어 있는지 확인 캐시에 저장..

Tech Interview/Network

[Network] 쿠키와 세션

✔ 쿠키와 세션 HTTP 프로토콜 HTTP 프로토콜은 클라이언트가 요청을 서버에 보내고, 서버가 클라이언트의 요청에 맞는 응답을 보내면 바로 연결이 끊기며 연결을 끊는 순간 클라이언트와 서버의 통신이 끝나며 상태 정보를 유지하지 않아 비연결, 비상태성 프로토콜 그러므로 모든 요청 간 의존관계가 없어 현재 접속한 사용자가 이전에 접속한 사용자와 같은 사용자인지 알 수 있는 방법이 없음 계속해서 연결을 유지하지 않기 때문에 리소스 낭비가 줄어드는 것이 큰 장점이지만, 통신할 때마다 새로 연결하기 때문에 클라이언트는 매 요청마다 인증을 하게 됨 이러한 문제점으로 인해 이전 요청과 현재 요청이 같은 사용자의 요청인지 알고자 HTTP 프로토콜에서 상태를 유지하기 위한 기술로 쿠키와 세션에 존재 쿠키 세션 저장 위..

Tech Interview/Network

[Network] CORS

✔️ CORS CORS란? Cross Origin Resource Sharing 웹 서버에서 보안 cross-domain 데이터 전송을 활성화하는 cross-domain 접근 제어권을 부여하도록 함 처음 전송되는 리소스의 도메인과 다른 도메인으로부터 리소스가 요청될 경우 해당 리소스는 cross-origin HTTP 요청에 의해 요청되게 되는데 이때 보안 상의 이유로, 브라우저들은 스크립트 내에서 초기화되는 cross-orgin HTTP 요청을 제한함 또는 same-origin 정책을 따라 자신과 동일한 도메인으로 HTTP 요청을 보내는 것만 가능함 이러한 웹 애플리케이션의 문제를 개선시키기 위해, 개발자들은 브라우저 벤더사들에게 cross-domain 요청을 할 수 있도록 요청해 CORS가 생기게 됨 ..

Tech Interview/Network

[Network] HTTP와 HTTPS

✔️ HTTP와 HTTPS HTTP란? HyperText Transfer Protocol 인터넷 상에서 클라이언트와 서버가 자원을 주고 받을 때 쓰는 통신 규약 클라이언트가 브라우저를 통해 URI로 특정 요청을 보내면 서버는 해당 요청을 받아 처리하여 클라이언트에게 응답 비연결을 지향하고 단방향성을 가짐 HTTP는 텍스트 교환이므로 누군가 네트워크에서 신호를 가로채면 내용이 노출되는 보안 이슈가 존재 그 외에도 완전성을 증명할 수 없기 때문에 변조와 위장이 가능함 이를 해결하기 위해 쿠키, 세션, 히든 폼 필드 등을 사용 HTTP 헤더 HTTP 헤더 내 일반 헤더 항목 : 요청 및 응답 메시지 모두에서 사용 가능한 일반 목적의 헤더 항목 Date : HTTP 메시지를 생성한 일시 Connection : ..

Tech Interview/Network

[Network] TCP와 UDP

✔️ TCP와 UDP TCP란? Transmission Control Protocol, 전송 제어 프로토콜 네트워크 통신에서 신뢰적인 연결방식을 보장할 수 있도록 하는 프로토콜 데이터를 패킷 단위로 처리 데이터의 분실, 중복, 순서가 뒤바뀜 등을 자동으로 보정해줘서 송수신 데이터의 정확한 전달을 할 수 있도록 함 3-way handshake라는 과정을 통해 연결을 설정하고 통신을 시작한 후, 4-way handshake 과정을 통해 연결을 해제하는 가상 회선 방식을 사용 TCP의 헤더 분석 TCP의 헤더는 Source Port, Destination Port, Sequence Number, Acknoledgment Number, Header length (Data Offset), Resv, Flag Bi..

Tech Interview/Network

[Network] TCP와 IP

✔️ TCP와 IP TCP의 개념 TCP (Transmission Control Protocol, 전송 제어 프로토콜) 네트워크 통신에서 신뢰적인 연결방식을 보장할 수 있도록 하는 프로토콜 데이터를 여러 개의 조각으로 나눈 패킷을 추적 및 관리하며 목적지에서는 패킷을 재조립하여 패킷의 분실 확인 처리를 함 3-way handshake라는 과정을 통해 연결을 설정하고 통신을 시작한 후, 4-way handshake 과정을 통해 연결을 해제하는 가상 회선 방식을 사용 흐름 제어, 오류 제어, 혼잡 제어를 통해 신뢰성과 데이터 전송 순서를 보장하지만, UDP보다 전송 속도가 느린 단점이 존재 신뢰적인 네트워크를 보장할 경우 4가지 문제점이 존재함 패킷이 손실될 수 있음 패킷의 순서가 바뀔 수 있음 네트워크가 ..

Tech Interview/Network

[Network] OSI 7계층

✔️ OSI 7계층 OSI 7계층이란? 국제표준화기구(ISO)에서 개발한 모델로, 컴퓨터 네트워크 프로토콜 디자인과 통신을 계층을 나누어 설명한 것 OSI 7계층을 통해 통신이 일어나는 과정을 단계별로 알 수 있고, 특정한 곳에 이상이 생기면 그 단계만 수정할 수 있음 표준화를 통해 이질적인 포트 문제나 프로토콜 등으로 인한 문제를 해결하여 비용을 절감할 수 있음 물리 계층 전기적, 기계적, 기능적인 특성을 이용해 데이터를 전기적인 신호로 변환해서 주고받는 기능을 진행하는 공간 데이터를 전송하는 역할만 진행함 전송 단위는 비트(Bit) 단위 물리 계층의 예 : 리피터, 케이블, 허브 등 데이터 링크 계층 물리 계층으로 송수신되는 정보를 관리하여 안전하게 전달되도록 도와주는 역할 (신뢰성있는 전송을 보장)..

김깅긍
'Tech Interview/Network' 카테고리의 글 목록 (2 Page)