본문 바로가기
네트워크

네트워크 기초 4~6

by 뭔가해보겠습니다 2024. 3. 5.

포트 - HTTP (80번) SMTP(25번)

A -> (우편집중국 -> 배송, 배달체계 -> 우편집중국) -> B
                              (통신 : 라우터)

서울시 / 강남구 / 대치동 / ㅇㅇ아파트
대분류 -> 소분류 : subnet
브로드캐스트 영역을 나누어 기밀성을 지킬 수 있다.

OSI 7 Layer의 구조

(유저인터페이스) ↓
7 : 응용계층 Application - 각종 응용서비스, 네트워크 관리                   / 메시지 / ex FTP, SMTP, HTTP, DHCP, 텔넷
6 : 표현 Presentation - 네트워크 보안(암복호화), 압축/해제, 포맷변환 / 메시지 / ex ASCII, jpg, MIME
5 : 세션 Session - 소켓 프로그램, 동기화, 세션 관리                            / 메시지 / ex SQL, RPC, 전송모드(반이중 전이중)
4 : 전송 Transport - 데이터 전송 보장, 오류&흐름&혼잡제어, QOS     / 세그먼트 / ex TCP, UDP, SCTP
3 : 네트워크 Network - 통신경로 설정, 중계기능, 라우팅, IPv4, IPv6  / 패킷 / ex IP, ICMP, ARP, NAT
2 : 데이터 링크 Data Link - Frame화, 매체제어MAC, 오류&흐름제어 / 프레임 / ex 이더넷, 802.11(WLAN 무선랜)

1 : 물리 Physical - 물리적 연결 설정, 전송방식, 전송 매체                 / 비트 스트림 / ex 기계적, 전기적, 절차적 규격

(전송매체) ↑

 

간단하게 알고 넘어가는 용어, 개념들
[FTP/TFTP - 파일전송
SNMP - 네트워크 관리
SMTP - 이메일 관리
Telnet - 원격제어
HTTP - 웹
DNS - 도메인을 ip로 바꾸어 통신할수있게 함
DHCP - 자동주소할당

 

반이중 : 송수신자가 한쪽으로만 가는 것
전이중 : 송수신자가 양방향으로 오고감

 

오류제어: 재전송요구
흐름제어: window size(용량) 조절
혼잡제어: 트래픽 양 조절


오류&흐름제어의 경우
전송계층에선 논리적인 제어, 데이터링크 계층에선 물리적인 제어로 볼 수 있다

 

TCP : 에러가 거의 없지만 느리다
UDP : 에러가 좀 있지만 빠르다
SCTP : TCP + UDP 결합.

 

ICMP : 통신의 제어와 관련. 수신자 확인 등.
IGMP : 그룹관련
ARP : IP주소 -> MAC 주소로 변경
RARP : MAC -> IP 주소 변경
NAT : 공인주소-사설주소 변경

RIP, BGP : 라우팅 관련 프로토콜

공인주소
- 인터넷에 통신할 때 사용
사설주소
- 특정 지역에서만 사용

NAT는 사설주소<->공인주소 쌍방 변환하여, 인터넷에 통신할 수 있도록 해줌

IPv4 32비트 주소가 고갈되어, 주소를 절약하기 위해 NAT가 설계됨.
(사설주소는 A구역의 111주소 B구역의 111주소처럼, 지역이 다르면 중복이 존재할 수 있게됨)
사설주소는 숨겨져 있기 때문에 보안성이 높아짐. ]


메일 전송 과정 (캡슐화<->역캡슐화)
A -> 응용계층Application (메시지 셋팅) -> 전송계층Transport (포트 추가)
-> 네트워크Network(IPv4나 IPv6 같은 ip주소 셋팅) -> 데이터 링크Data link(48비트 MAC물리주소 셋팅)
-> 전송매체 -> 다시 데이터링크부터 거슬러 올라가면서 역캡슐화 -> B

+48비트 MAC 물리주소 (24비트 Vendor + 24비트 serial number로 구성)

 

패킷의 전송방법
1. 유니캐스트 : 단일 송신자가 한명의 특정 수신자에게 전송
2. 멀티캐스트 : 단일 송신자가 다수의 특정 수신자에게 전송
3. 브로드캐스트 : 같은 네트워크에 있는 모든 불특정 다수의 수신자에게 전송 (기밀성 관련)
4. 애니캐스트 : 단일송신자가 그룹내 가장 가까운 위치의 수신자에게 1:1 전송

 

애니캐스트 예시
8.8.8.8 : Google public DNS
-> 자신이 속한 지역내에서 라우팅 경로가 최적인 지역 DNS 서비스를 제공

                       IPv4           IPv6
유니캐스트        O                 O
멀티캐스트        O                 O
브로드캐스트    O                 X
애니캐스트        X                 O

 

클래스별 IP 주소 분류. TCP/IP 체계 도입 초반에 제안됨.
                                                      First Byte
Class A : 0으로 시작     / n=8bit    / 0 to 127
-> 2의 24제곱 - 2의 호스트 수용 (2개는 NAT주소, 브로드캐스트 주소)

Class B : 10으로 시작   / n=16bit / 128 to 191

-> 2의 16제곱 - 2의 호스트 수용

Claas C : 110으로 시작 / n=24bit / 192 to 223
->2의 8제곱 -2의 호스트 수용

Claas D : 1110으로 시작 / not applicable / 224 to 239

-> 멀티캐스트용으로 사용

Claas E : 1111으로 시작 / not applicable / 240 to 255

브로드캐스트 255.255.255.255
255(8비트) : 1111 1111 = 2의 8제곱
2의 7제곱까지의 누적값은 (2의 8제곱) - 1 이다.

ex
subnet을 나눌때
A클래스의 경우 8bit + 호스트할당 24bit
C클래스의 경우 24bit + 호스트할당 8bit
총 32bit가 됨

 

서브네팅과 슈퍼네팅
1) subnet mask : n=24 + 3 = 27
-> 호스트 개수가 주어졌을 때 : y = (2의 x제곱) -2 (x=호스트 비트수)
     서브넷 마스크에서 뒤쪽부터 y개가 호스트 id가된다
-> 네트워크 개수가 주어졌을 때 : y = 2의 x제곱 (x=네트워크 부분 비트수)
    서브넷 마스크에서 기존 네트워크 id부터 y개가 네트워크 부가 된다
2) default mask : n=24 (C class)
3) supernet mask : n=24 - 3 =21
(* 이 부분 잘 모르겠음. 다시 보거나 추가공부할것.)

 

IPv4 데이터그램
header : 20~60 byte 가변적
payload

VER 4bit (제일 첫 번째. IPv4 또는 IPv6)
HLEN 4bit (헤더 길이)
Service type 8bit 잘안씀
Total Length 16bit (2의16제곱-165536. 전체길이. 헤더길이를 빼면 데이터길이가 나옴)
Identification, Flags, Fragmentation offset : 단편화 관련
Time-to-live TTL. 시간측정. 라우터수. 무한루프방지.
Ptotocol 다중화 (4계층의 port, 3계층의 protocol, 2계층의 type)
Header checksum 분할후에 헤더 검사용도
Source IP address 출발지주소
Destination IP address 도착지주소
Options+padding 최대 40bit
- strict source route : 거쳐갈 라우터 순서를 미리 정해놓은것
- loose source route : 다른 경로를 거쳐가도 됨

Flags는 3비트인데
첫번째는 사용하지 않는다
두번째는 do not fragment. 1일경우 단편화X, 0일경우 단편화O
세번째는 more fragment. 1일경우 추가 단편화O, 0일경우 추가 단편화X

 

IPv6 데이터그램
- 삭제된 항목 : HLEN, Identification, Flags, Fragmentation offset, Header checksum
Header 40byte 고정


VER
Traffic class 서비스 유형.
Flow label 데이터의 특정한 흐름에 대한 처리 제공
payload length 데이터그램의 길이
next header 첫 확장헤더에 뒤따르는 헤더
(확장헤더 : 인증, ESP(IPSec - VPN 공중망을 사설망 쓰듯이 사용))
hop limit TTL과 유사. 
source address 128bit
Destination address 128bit

 

특징비교
                   IPv4          IPv6
주소길이 : 32비트 / 128비트
표시:         8비트씩 4부분 10진수 / 16비트 8부분 16진수
주소할당: ABCD 클래스단위 비순차 할당 / 규모, 수에 따른 순차할당
헤더길이: 가변 / 고정
보안:        IPSec 별도설치 / IPSec 자체지원

 

사용자 데이터그램 UDP 형식
Header 8 bytes 고정
Source port number : 다중화 관련. 
Destination port number
Total length 헤더포함 전체길이
Checksum 오류제어(선택) 출발지와 도착지에서 checksum 비교. 결과는 도착지에서 처리.

TCP 세그먼트 형식
Header 20~60 bytes
Source port number : 다중화 관련. 
Destination port number
Sequence number
Acknowledgment number
HLen 가변헤더
Reserved 6bit (UAPRSF)
Window size 흐름제어 관련
Checksum 오류제어(필수)
Urgent pointer
Options and padding

UAPRSF
URG : 긴급. Urgent pointer와 같이 설정.
ACK : 수신자확인 관련. Acknowledgment number와 같이 설정.
PSH : 응용계층에 빨리 전달하고자 할 때
RST : 강제로 연결 초기화
SYN : 연결을 시작하기 위한 비트
FIN : 종료 요청 컨트롤 비트

 

주요 차이점
                                          TCP          UDP
신뢰성:                         ACK수신 / ACK X
연결:        연결지향적, 가상연결 / 비연결지향적, 가상연결X
패킷순서: 순서번호로 순차수신 / 순서번호X
혼잡제어:        에러&지연 통보 / 흐름제어통보X
사용:         신뢰성이 필요할때 / 신뢰성 불필요할때
속도,오버헤드:    비교적 느림 / 비교적 빠름

 

 

 

 

 

 

복습

 

전송 계층
신뢰성있는 데이터를 주고받게 하여 상위계층이 데이터 전달의 유효성이나 효율성을 신경쓰지 않게 한다

세션계층
: 양 끝단의 응용 프로세스가 통신을 관리하는 방법을 제공한다

데이터 링크 계층
: 신뢰성 있는 전송을 보장하기 위해 16진수 12개로 구성된 MAC 주소 사용

네트워크 계층
: 여러 개의 노드를 거칠 때마다 경로를 찾아주는 역할. 라우터를 통한 패킷 포워딩.

인터넷 프로토콜 IP
: IPv4와 IPv6의 첫 번째 필드는 Ver 버전이다

IPv6
: 각 부분은 콜론: 으로 구분되며 16진수로 표현한다. 총 128bit. checksum필드가 제거됨. 헤더 40byte 고정.

TCP Header
: 윈도우 크기, 포트 번호, 순서번호를 포함함

제어용 플래그
UAPRSF

'네트워크' 카테고리의 다른 글

네트워크1 3차시  (0) 2024.06.08
네트워크1 2차시  (0) 2024.06.02
네트워크1 1차시  (0) 2024.06.01
네트워크 기초 7~8  (0) 2024.03.06
네트워크 기초 1~3  (0) 2024.03.05