개요
네트워크 개념과 프로토콜에 대해 이해한다.
Checklist
인터넷은 어떻게 동작하나요? Internet Protocol Suite의 레이어 모델에 입각하여 설명해 보세요.
→ 지역PC가 인터넷에 접근할때 인터넷 영역에서의 수많은 라우팅을 관리하는 Hob(Default Gateway)이 필요하며, 최종적으로 인터넷 사이트에 해당하는 라우터에 접근한다.
→ 보통 상대의 목적지 IP 주소는 특정 값으로 정해지지만, 인터넷의 경우엔 0.0.0.0/0으로 특정지어지지 않는다.
→ 라우팅 경로 정보가 정해져있는 정적라우팅과는 달리, 네트워크 상황에 따라 정보를 빠르게 확보할 수 있는 경로를 중심으로 패킷을 전송하는 라우팅이다.
→ 데이터 정보에 포함된 목적지 주소가 인터넷처럼 광범위하거나, 정적 라우팅을 통한 탐색이 불가능할 경우 동적 라우팅(보통 지역 통신사 등)을 통해 데이터 전달을 진행한다.
근거리에서 서로 떨어진 전자기기가 유선/무선으로 서로 통신하는 프로토콜은 어떻게 동작할까요?
→ 근거리에 놓여진 두 기기의 네트워크 대역은 보통 정적 라우팅을 통해 연결하며, 라우팅테이블에 저장된 두 기기의 IP와 PORT 정보를 통해 데이터 전달이 이루어진다.
→ 와이파이를 통해 연결한다면 무선 공유기를 통한 라우팅을 진행할 것이고, 블루투를 통해 연결한다면 BLE stack 프로토콜을 기반으로 통신을 진행할 것이다.
아주 멀리 떨어져 있는 두 전자기기가 유선/무선으로 서로 통신하는 프로토콜은 어떻게 동작할까요?
→ 사용하는 프로토콜은 두 기기간 거리보다는, 두 기기가 네트워크를 어떤 형태를 통해 연결하였으며 어떤 통신규약을 채용하고 있는지에 영향을 받는다.
→ 보통 멀리 떨어져 있는 기기의 경우엔 근거리 대역의 네트워크가 없어 라우팅 테이블 작성이 어려우므로, 인터넷과 같이 Hob(지역 통신사)를 통한 데이터 전달이 이루어진다.
두 전자기기가 신뢰성을 가지고 통신할 수 있도록 하기 위한 프로토콜은 어떻게 동작할까요?
→ 웹과 사용자간의 대표적인 통신규약인 HTTP는, SSL인증을 적용한 HTTPS 프로토콜을 사용한 것이 가장 대표적인 보안적용의 예이다.
→ HTTP프로토콜을 통한 데이터통신 과정에 SSL/TLS 암호화 방식(양방향 암호화)을 적용하여 상대적으로 안전한 데이터 전달이 가능하도록 한 방식이다.
HTTP는 어떻게 동작할까요?
→ 웹(서버를 통해 운용되는 HTML 문서)과 사용자 간 정보를 주고받기 위하여 사용하는 통신규약이다.
→ 개발자가 구성한 알고리즘 및 문서구성(HTML)에 따라 데이터 및 헤더에 데이터를 저장하고, request/response를 기반으로 웹사이트 동작이 이루어진다.
부가개념
네트워크 및 계층
네트워크
→ 네트워크란 기본적으로 여러 대의 컴퓨터가 존재하는 환경을 일컫는데, 보통 데이터를 통신하기 위해 그물망처럼 연결한 체계를 의미한다.
→ 데이터 통신을 위해서는 네트워크에 적용할 수 있는 규격이 반드시 있어야하고, LAN/ WAN/ MAN 등 여러 규격이 존재한다.
OSI 7 Layer
→ 통신규약(프로토콜)과 통신계층으로 구분하여, 네트워크에 적용하는 7계층의 시스템이다.
→ 프로토콜을 기능별/계층별로 구분하여 다양한 네트워크 계층을 적용할 수 있게 되었고, 이를 바탕으로 여러 네트워크 장비의 표준화 및 호환을 더 효율적으로 진행할 수 있게 되었다.
OSI 7 Layer
이 7 Layer 중 많이 접하는 계층을 중심으로 기술하면 다음과 같다.
N5, Session (IP/포트통신의 table화)
N4, Transport (포트통신)
N3, Network (IP통신)
위에서 이루어지는 데이터들은 해당 계층의 정보를 담은 상태에서, 다른 계층으로부터 전달받은 정보를 헤더라는 공간에 저장한다.
라우팅 / switch
라우팅
→ 하나의 네트워크 대역은 다른 대역의 네트워크와 통신하기 위해 일련의 과정을 거쳐야 하며, 이 과정을 라우팅이라 일컫는다.
→ 네트워크 계층에서는 패킷 포워딩이 이루어지며, 특히 인터넷 네트워킹을 위해 사용하는 통신규약은 IP가 가장 대표적이다.
→ 인터넷(네트워크 간 연결을 통해 구축되는 환경) 환경의 기반이다.
switch
→ 동일한 네트워크 대역 안에서 이루어지는 데이터 통신을 switch라 한다.
→ 라우팅에 비해 규모가 적은 통신방법이며, switch loop 등 통신오류를 최소화하기 위해 지속적으로 알고리즘이 개선되어 왔다.
socket
정리
OSI 7 layer
https://madplay.github.io/post/network-osi-7-layer
블루투스 프로토콜
https://neosla.tistory.com/49
SSL/TLS
https://www.comworld.co.kr/news/articleView.html?idxno=49687
네트워크와 소켓
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=kbh3983&logNo=220788898350
https://blog.neonkid.xyz/117