*네트워크(데이터 통신망)에는 통신망이며 통신망은 여러 통신망이 있다.
인터넷은 그 여러 통신망중 가장 큰 통신망이다.
*네트워크 크기 형태에는 lan(랜, local area network), wan(왠, wide area network), man, vlan, can, pan.. 등등 여러 분류가 있다. 대표적으로 lan과 wan이 있다. lan은 가까운 지역을 하나로 묶은 근거리 통신망 네트워크다. wan은 멀리 떨어진 지역을 한데 묶은 네트워크 여러개인 lan들을 하나로 묶은 것이다.
*네트워크 연결 형태에는 star형과 mesh형, 혼합형이 있다. star형은 중앙장비에 모든 노드(모든장비)가 연결된것을 말한다. 이해하기 쉽게 설명하면 대표적으로 가정에서 사용하는 인터넷 공유기다. 보통 lan대역에 것들을 star형으로 만든다. mesh형은 서로 그물처럼 연결된 형태다. 예를들어 국가와 국가끼리 통신망이 연결된 형태가 mesh형태다. 실제 인터넷은 여러 형태를 혼합한 혼합형 형태다. 결국엔 lan과 wan을 항상 혼합형으로 연결되어 있다.
*네트워크 통신망에서 어떻게 네트워크를 통신하는가 알아보자면, 통신방식에는 특정 대상 1:1 통신하는 유니캐스트 특정다수 1:n으로 통신하는 멀티캐스트, 네트워크에 있는 모든 사용자, 대상과 통신하는 브로드캐스트가 있다.
*네트워크에서 특정 컴퓨터랑 통신할때는 프로토콜을 사용하는데, 프로토콜은 일정의 약속, 양식이라 생각하며 된다. 프로토콜도 여러 양식이 있는데, 가까운 곳과 연결할대는 Ethernet(이더넷) MAC주소랑 연결하고, 멀리있는 곳과 연결할떄는 ICMP IPv4 ARP(IP주소)랑 통신하고, 특정 컴퓨터에 여러 프로그램이랑 통신할때는 TCP, UDP라는 프로토콜을 사용하고 포트번호(주소)를 사용한다.
*네트워크에 여러 프로토콜이 어떤식으로 생겨났냐 살펴보면, 내가 보내고 싶은 데이터를 보내기 위해서, 어떤 프로그램과 통신할지, 어느 멀리 떨어진 지역, 그리고 그 지역에 특정 컴퓨터를 찾아가는 여러개의 프로토콜을 같이 사용한다. 이런식으로 여러 프로토콜이 합쳐진 모양을 캡슐화, 캡슐레이션이라 한다.
*구글dns에 접속경로를 추적하려면 cmd-tracert 8.8.8.8 입력하면 추적할수있다. 여러개의 하나의 네트워크 대역들을 하나씩 넘어갈때마다 경로를 확인할수있다.
*네트워크 모델에는 TCP/IP라는 모델과 OSI 7계층 모델이 있다. TCP/IP 모델은 1960년대에 미국에서 시작되어 나왔다. OSI 7계층 모델은 1985년 네트워크 통신 전체를 체계적으로 다루는, ISO라는 국제표준화기구에서 네트워크 표준으로 지정한 모델이다. 데이터를 주고 받을때 데이터 자체를 각 구간별로 나누어놓았다. 여기서 이더넷과, IP,ICMP, ARP, TCP,UDP, HTTP의 구조까지는 기본적으로 알고있어야 한다.
두 모델의 비교하자면 네트워크를 계층으로 따로 나누어 분류해놨다. 차이점은 계층의 수가 차이가 있고, OSI는 역할만 나누어놨고, TCP/IP는 네트워크를 통해 데이터를 전달할때 그 기술 자체를 분류해 놓은것과 같다. OSI는 논리적이며, TCP/IP는 실질 및 실무적이다.
*네트워크를 통해 전달되는 모든 데이터를 패킷이라 부르는데, 이 패킷은 하나의 블록 단위로 되어있다. 패킷 안에는 여러 제어정보와 사용자 데이터, 무얼 요청하는지가 들어있따. 패킷은 즉 여러가지 프토토콜의 조합이 들어있는데, 러시아 전통인형처럼 프로토콜안에도 순서가 있다. 패킷은 여러 프로토콜들로 캡슐화된것이 패킷이다. 패킷은 헤더-페이로드-풋터 형태로 되어있다. 페이로드는 실질 보낼 데이터다. 페이로드 앞에 헤더가 있을 수 있고, 뒤에 풋터가 있을 수 있다. 참고로 풋터는 잘 사용하지 않고, 헤더만 사용한다. 예를들어 HTTP 프로토콜을 페이로드로 해서, TCP프로토콜을 헤더로 해서 하나의 패킷으로 붙였따. 또 TCP+HTTP를 페이로드로 해서, IPv4를 헤더로 해서 패킷으로 사용할수 있다.
'네트워크 통신' 카테고리의 다른 글
AWS-MYSQL 외부접속 mysqld.cnf (0) | 2023.05.18 |
---|---|
SSH 인증방식 Public Key Authentication 방식 (0) | 2023.04.04 |
HTTP / HTTPS / SSL / TLS (0) | 2022.12.19 |
HTTP 개념정리 (0) | 2022.12.19 |
깃(git) - git bash 폴더 업로드 (0) | 2022.12.01 |