네트워크란 무엇입니까?
네트워크란?
- 노드가 데이터를 공유할 수 있는 디지털 통신 네트워크
- 노드: 네트워크에 속한 컴퓨터 또는 통신 장치를 말합니다.
인터넷이란?
- 전 세계의 컴퓨터들이 서로 연결되어 정보를 교환하는 하나의 거대한 네트워크.
웹이란 무엇인가
- 인터넷 네트워크를 사용하여 전달되는 일련의 정보
네트워크 분류
- 크기에 따른 분류
- LAN(Local Area Network): 주변 지역을 하나로 묶는 네트워크
- WAN(Wide Area Network): 먼 지역을 연결하는 네트워크, 즉 LAN과 LAN이 다시 결합됩니다.
- MAN(광역통신망)
- VLAN, CAN, PAN 등
- 연결 유형에 따른 분류
- 스타형: 중앙 장비에 연결된 모든 노드
- 일반적으로 가정에서는 휴대폰, 컴퓨터, TV 등이 라우터를 통해 연결된다. 이때 라우터가 고장나면? 네트워크를 사용할 수 없게 됩니다.
- 보통 LAN 대역은 스타형으로 구성된다.
- 메쉬 유형: 여러 개의 노드가 그물처럼 서로 연결됨
- 실제로 인터넷은 다양한 형태의 혼합으로 구성되어 있다.
네트워크 통신 방식
- Unicast: 특정 대상과만 1:1 통신
- 멀티캐스트: 특정 인원과 1:N 통신
- 브로드캐스트: 네트워크의 모든 사람과 통신
네트워크 프로토콜
- 프로토콜: 네트워크에서 어떤 노드가 어떤 데이터를 어떤 노드로 보내고 어떤 노드에서 노드로 통신하는지 쓰는 형식.
- 다양한 프로토콜
- 이더넷 프로토콜(MAC 주소): 주변과 통신
- ICMP, IPv4, IPv6, ARP(IP 주소): 원거리 통신
- TCP, UDP(포트번호) : 각종 프로그램과 통신
- 패킷: 패킷 기반 컴퓨터 네트워크에 의해 전달되는 형식화된 데이터 블록입니다. 여러 프로토콜로 캡슐화
- 형식: | 이더넷 | IPv4 | TCP | 데이터 |
훈련
- Google과 로컬 컴퓨터가 어떻게 연결되어 있는지 확인하세요.
- traceroute : 네트워크 연결에 대한 세부 정보를 얻는 데 사용되는 진단 도구입니다. 패킷이 발신지에서 목적지까지 이동하는 각 경로(홉)를 확인할 수 있습니다.
traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets
1 * * *
2 211.38.36.105 (211.38.36.105) 6.499 ms 4.089 ms 4.991 ms
3 112.189.150.113 (112.189.150.113) 5.068 ms 4.646 ms 2.653 ms
4 112.189.159.65 (112.189.159.65) 4.940 ms
112.189.145.201 (112.189.145.201) 4.422 ms
112.189.145.149 (112.189.145.149) 5.702 ms
5 * * *
6 112.174.90.30 (112.174.90.30) 9.808 ms
112.174.90.78 (112.174.90.78) 9.593 ms 9.644 ms
7 112.174.84.38 (112.174.84.38) 9.948 ms
112.174.84.22 (112.174.84.22) 11.940 ms
112.174.84.58 (112.174.84.58) 11.843 ms
8 142.250.165.78 (142.250.165.78) 31.711 ms
72.14.202.136 (72.14.202.136) 36.099 ms 34.607 ms
9 * * *
10 72.14.238.23 (72.14.238.23) 32.584 ms
dns.google (8.8.8.8) 33.961 ms 34.320 ms
- 패킷이 통과하는 각 홉의 IP 주소와 각 패킷의 이동 시간을 확인할 수 있습니다. traceroute를 사용하는 목적은 다음과 같이 요약할 수 있습니다.
- 목적지까지 패킷의 전체 경로를 파악할 수 있습니다.
- 경로에 존재하는 라우터 정보를 확인할 수 있습니다.
- 각 경로에 도달하는 데 걸리는 시간을 확인할 수 있습니다.
- 결론적으로 통신 문제가 있을 때 어디에서 패킷이 막히거나 속도가 느려지는지 확인할 수 있습니다.
- 어쨌든 traceroute 키워드를 통해 로컬 컴퓨터(source)와 google(destination)이 어떻게 연결되어 있는지 확인할 수 있습니다.
- 프로토콜 직접 확인: Wireshark를 사용하여 컴퓨터가 인터넷을 통해 보내고 받는 모든 것을 직접 확인합니다.
네트워크 모델
TCP/IP 모델
- 1960년대 후반 미 국방부 연구로 시작하여 1980년대 초반 프로토콜 모델로 출시
- 현재 인터넷에서 컴퓨터가 서로 정보를 교환하기 위해 사용하는 통신 규칙(프로토콜)의 모음입니다.
- 총 4개의 레이어로 구성되어 있습니다.
- 계층 1: 네트워크 인터페이스
- 계층 2: 네트워크
- 레이어 3: 전송
- 계층 4: 애플리케이션
OSI 7 레이어
- 1984년 네트워크 통신을 체계적으로 다루는 ISO에서 표준으로 지정한 모델
- 데이터가 교환되면 데이터 흐름 자체가 섹션으로 나뉩니다.
계층 | 이름 | 세부 사항 |
---|---|---|
7 | 애플리케이션 | 다양한 서비스를 제공하는 실용적인 프로그램, 사용자 인터페이스 |
6 | 표현 | 전달할 데이터의 형식을 결정하는 계층 ex) 그림파일(jpeg, png), 압축파일(zip, tar.gz), 평문 |
5 | 세션 | 논리적 연결을 정의하는 계층 및 네트워크 장치 간 연결 설정의 유지 관리 동기화를 수행하는 방법 |
4 | 보내다 | 포트 주소를 이용한 통신, 오류 제어(신뢰성), 특정 프로그램 간의 통신(웹 브라우저와 웹 서버) |
삼 | 회로망 | IP 주소를 사용하여 통신 및 전송 경로를 선택하고 최적의 경로를 결정하며 특정 네트워크를 찾는 역할을 합니다. |
2 | 데이터 링크 | MAC 주소를 이용한 통신, 특정 네트워크에서 특정 PC를 찾는 역할 |
1 | 물리학 | 상위 계층에 캡슐화된 데이터를 비트 단위로 변환하여 전기적 신호로 전송하고, 수신된 전기적 신호를 비트 단위로 해석하는 역할 |
OSI 7계층과 TCP/IP의 유사점과 차이점
- 공통점
- 계층적 네트워크 모델
- 계층 간 역할 정의
- 차이점
- 레이어 수의 차이
- OSI는 역할 기반, TCP/IP는 프로토콜 기반
- OSI는 전반적인 통신의 표준입니다.
- TCP/IP는 데이터 전송 기술에 특화되어 있습니다.
패킷
- 패킷은 네트워크를 통해 전송되는 데이터의 총칭이며 네트워크를 통해 전송되는 데이터의 형식화된 블록입니다.
- 헤더 | 페이로드 | 보행인
- 일반적으로 바닥글은 잘 사용하지 않습니다.
- 패킷은 제어 정보와 사용자 데이터로 구성되며 사용자 데이터를 페이로드라고도 합니다.
- 패킷 제어 정보에는 순서가 있습니다.
- 패킷은 여러 프로토콜로 캡슐화됩니다.
- 캡슐화: 데이터는 여러 프로토콜을 사용하여 저장됩니다. 보낼 때 패킷 제작 과정
- 하위 계층의 프로토콜은 마지막(전면)에 추가됩니다.
- TCP는 계층 4, IPv4는 계층 3, 이더넷은 계층 2입니다.
- 캡슐화 해제: 패킷 * 받았을 때 프로토콜을 하나씩 확인하여 데이터를 확인하는 과정
PDU(프로토콜 데이터 단위)
- 세그먼트: 4계층 PDU(TCP + 데이터)
- 패킷: 레이어 3 PDU(IPv4 + TCP + 데이터)
- 프레임: 레이어 2 PDU(이더넷 + IPv4 + TCP + 데이터)
- 예)
- arp 프로토콜의 패킷
- ICMP 프로토콜의 패킷
- arp 프로토콜의 패킷