5.네트워크 계층
가.개요
-대표 프로토콜: IP
역할
-경로제어 (라우팅)
발신에서 착신까지의 패킷의 경로를 제어
하나 이상의 복수 통신망을 통한 중계를 하며, 개방시스템간의 데이터를 전송
-투명성
상위의 전송계층이 경로선택과 중계 등 망계층 고유의 기능에 대하여 의식하지 않도록 하는 역할
-논리적 주소체계 부여
라우팅과 관련된 주소의 지정 등 주소체계 정립
-연결지향성 및 비연결성 서비스 제공
망 계층은 상위의 전송계층에게 연결지향성 및 비연결성 서비스 모두를 제공
연결지향 서비스: 연결의 설정, 사용, 해제를 위한 프리미티브를 가짐
포워딩
-수신 프레임/패킷 주소를 보고, 어떤출력 포트로 프레임/패킷을 전달하는 것
-브리지 내 프레임 포워딩 : MAC주소 기준
-라우터 내 패킷 포워딩 : IP주소 기준
라우팅
-네트워크상에서 주소를 이용, 목적지까지 경로를 체계적으로 결정하는 경로선택 과정
라우팅 방식 주요 구분
-고정(정적)라우팅 : 미리 정해진 루트를 따라 경로선택 (수동)
-동적(적응적)라우팅 : 망의 상태에따라 경로선택 (자동)
네트워크 정보를 이용하지 않는 라우팅 방식
-홍수라우팅(플러딩) : 수신 경로 이외의 모든 경로로 전파
-랜덤라우팅 : 무작위로 경로 설정
기타 구분
-소스라우팅 : 경로를 모두 리스트로 만들어 패킷의 헤더를 넣어 보내는 경로선택 방식
-계층적라우팅 : 큰 그룹에서 점차 작은 그룹으로 계층적 경로선택 방식
라우팅 결정에 이용하는 정보
-토폴로지
-트래픽 부하
-링크 비용
포워딩, 라우팅 비교
-포워딩 : 입력으로부터 한 패킷을 취해 적절한 출력으로 보내는 것
-라우팅 : 복잡한 네트워크에서 최적의 경로가 결정될 수 있또록 라우팅 테이블을 구성하고 이를통해 패킷을 전송
나.네트워크 주소
-하나의 장치가 두 개의 네트워크에 동시에 연결되어 있으면 2개의 IPv4 주소를 가지게 된다.
-IP주소는 이동성을 지원하지 않는다. 장치의 IP는 다른 네트워크로 이동하면 변경된다.
-IPv4는 2의 32승개의 주소 공간을 갖는다.
클래스형 주소
CLASS |
범위 |
subnet mask |
A |
0.0.0.0 ~ 127.255.255.255 |
255.0.0.0 |
B |
128.0.0.0 ~ 191.255.255.255 |
255.255.0.0 |
C |
192.0.0.0 ~ 223.255.255.255 |
255.255.255.0 |
D |
224.0.0.0 ~ 239.255.255.255 |
not defined |
E |
240.0.0.0 ~ 255.255.255.255 |
not defined |
서브네팅
-서브네팅은 큰 주소 공간을 작은 것으로 나누는 것
-클래스A나 클래스B는 여러 개의 서브넷으로 분리된다. 각 서브넷은 원래보다 큰 크기의 접두사를 가진다.
-큰 기관이 서브네팅을 통해 여러 기관으로 분배할 수 있다.
수퍼네팅
-여러 클래스 C를 하나의 큰 구조로 묶어 사용하는 것이다
-수퍼네팅을 하면 패킷의 라우팅이 복잡해져 사용하지 않는다.
사설 IP 주소
CLASS |
범위 |
Prefix |
A |
10.0.0.0 ~ 10.255.255.255 |
10.0.0.0/8 |
B |
172.16.0.0 ~ 172.31.255.255 |
172.16.0.0/12 |
C |
192.168.0.0 ~ 192.168.255.255 |
192.168.0.0/16 |
-공인 환경이 아닌 기업 내부 사설 환경에서 사용을 권장하는 주소
-Prefix란 서브넷마스크 맨 앞의 비트부터 1의 개수를 표기하는 방식
비클래스형 주소
-인터넷에 할당할 주소 고갈의 문제의 단기적 해결책으로 사용
-전체 주소 공간은 가변 길이의 블록으로 나누어진다
-주소의 블록은 2의 제곱승으로 사용되어야 한다
접두사의 길이: 클래스 없는 인터도메인 라우팅(CIDR), 슬래시 표기법
-접두사의 길이는 주소에 포함되지 않으므로 접두사 길이를 슬래시로 구분하여 주소에 추가하여 나타낸다.
-CIDR형식의 주소에서는 접두사의 길이를 토대로 해당 블록 내 주소 수, 첫번째 주소, 마지막 주소를 알아낼 수 있음
-블록 내 주소 수 : N = 2의 (32-n)승
-첫 번째 주소 : 왼쪽 n개 비트는 유지, 나머지는 0으로 설정
-마지막 주소 : 왼쪽 n개 비트는 유지, 나머지 비트는 1로 설정
예시 (220.8.24.255/24)
-블록 내 주소 수 = 2의 (32-24)승 = 256개
-첫번째 주소 = 220.8.24.0
-마지막 주소 = 220.8.24.255
주소 마스크
-prefix인 n개의 비트로 왼쪽부터 n개는 1로, 나머지는 0으로 설정
-블록 내 주소 수 = NOT(Mask)+1
-첫 번쨰 주소 = (주소)AND(mask)
-마지막 주소 = (주소)OR(Not(mask))
블록할당
-클래스 없는 주소 지정에서 블록 할당은 ICANN이 결정
-요청된 주소 수 N은 2의 제곱이여야 함 ( 예: 1000개의 주소 요청시 1024개의 주소 할당)
특수주소
this-host 주소 |
0.0.0.0/32 |
자신의 주소를 모르는 경우 사용 |
제한된 브로드캐스트 주소 |
255.255.255.255/32 |
네트워크 상 모든 장치로 데이터그램을 보낼 때 사용 |
루프백 주소 |
127.0.0.0/8 |
패킷이 호스트를 벗어나지 않게함. SW 테스트 목적으로 사용 |
멀티 캐스트 주소 |
224.0.0.0/4 |
미래 사용 용도로 예약 |
네트워크 주소 변환(NAT)
-공인 IP와 사설 IP를 변경시켜줘서 통신이 가능하게 하는 방법
-부족한 IP개수 해결
장점
-1개의 공인 IP로 많은 사설 IP가 통신이 가능
-내부에 있는 IP로 직접 통신을 하는것이 아닌 공인 IP로 변경되어 통신이 되기때문에 내부에 있는 IP를 숨길 수 있음
PAT
하나 또는 하나 이상의 공인IP주소를 여러 개의 내부 IP주소들이 공유할 경우에 사용
DHCP
-호스트의 IP주소와 각종 TCP/IP 프로토콜의 기본 설정을 클라이언트에게 자동적으로 제공해주는 프로토콜
-네트워크 안에 컴퓨터에 자동으로 네임 서버 주소, 게이트웨이 주소를 할당해주는 것을 의미
-해당 클라이언트에게 일정 기간 임대를 하는 동적 주소 할당 프로토콜
-UDP프로토콜을 기반으로 작동
장점
-PC의 수가 많거나 PC자체 변동사항이 많은 경우 IP 설정이 자동으로 되기 떄문에 효율적으로 사용 가능
-IP를 자동으로 할당해주기 때문에 IP충돌을 막을 수 있음
단점
-DHCP서버에 의존되기 때문에 서버가 다운되면 IP할당이 제대로 이루어지지 않음
구성
-DHCP서버
일정한 범위의 IP주소를 다른 클라이언트에게 할당하여 자동으로 설정하게 해주는 역할
클라이언트에게 할당된 IP주소를 변경없이 유지해 줄 수 있음
-클라이언트
시스템이 시작하면 DHCP서버에 자신의 시스템을 위한 IP주소를 요청
DHCP서버에게 IP주소를 부여받으면 TCP/IP설정은 초기화되고 다른 호스트와 통신을 할 수 있게 됨
구성정보
-기본 정보: IP주소, 서브넷 마스크, 디폴트 게이트웨이
-추가 정보: DNS의 IP주소, 홈 에이전트, 디폴트 도메인 네임 등
IPv6주소
-32비트 크기인 IPv4주소와는 달리 128비트 크기의 IP주소 식별자
표기법
-16진수 표기
4개의 16진수를 콜론( : )으로 구분하고, 8개 묶음으로 표시
예) 2004:2ba8:13aa:0011:0000:0000:0000:abaa
-앞쪽 '0은' 생략 가능
예) 2004:2ba8:13aa:11:0:0:0:abaa
-'0'이 연속할 경우 '::'으로 축약 가능
예) 2004:2ba8:13aa:11:::abaa
예) 0:0:0:0:0:0:0:1 -> ::1
주소유형
-Unicast Address : 1 대 1 (특정 단일)
-Multicast Address : 1 대 다 (특정 집단)
-Anycast Address : 기타 방식 (근접 누구나)
IPv4와 IPv6 비교
구분 |
IPv4 |
IPv6 |
주소 길이 |
32bit |
128bit |
주소 개수 |
약 43억개 |
거의 무한대 |
품질 제어 |
품질 보장 곤란 |
품질 보장 용이 |
보안 |
IPsec Protocol 별도 설치 |
확장 기능에서 기본으로 제공 |
이동성 지원 |
비효율적 |
효율적 |
Header Checksum |
있음 |
없음 |
주소 유형 |
유니캐스트 멀티캐스트 브로드캐스트 |
유니캐스트 멀티캐스트 애니캐스트 |
다.IP 프로토콜
IPv4 헤더
-최소 20바이트
-고정 부분(20바이트)와 가변 부분(40바이트)로 구성
-구성 (가로 안은 비트수)
Version(4): IPv4이면 4
Header Length(4): 헤더의 길이로 최소 5(4x5=20바이트) 부터 15(4x15=60바이트) 까지의 값
Type of Service(8): 요구되는 서비스 품질을 나타냄
Total Packet Length(16): IP헤더 및 데이터를 포함한 IP패킷 전체의 길이를 바이트 단위로 표시
Time To Live(8): IP패킷 수명
Protocol ID(8): 어느 상위계층 프로토콜이 데이터 내에 포함되었는가 보여줌
IPv6 헤더
-최소 40바이트
-구성
Version(4): IPv6이면 6
Traffic Class(8): IPv4의 TOS와 유사, 서비스 요구사항을 구분하기 위함
Flow Label(20): IP를 연결지향적 프로토콜로 사용할 수 있게 함
Payload length(20): IP를 연결지향적 프로토콜로 사용할 수 있게 함
Next Header(8): IPv4의 Protocol ID와 유사
Hop limit(8): IPv4의 TTL과 같은 역할
IPv6로의 천이
-새로운 IPv6망을 확대해나가면서 기존 IPv4망과의 서비스를 상당기간 유지, 공존하려는 점진적인 해결책
듀얼스택
-하나의 시스템에서 IPv4 및 IPv6을 모두 지원, 처리하는 기술
-단, IPv4주소가 필요하게되어, IPv4 주소 부족 문제에는 별 도움이 안됨
터널링
-2개의 IPv6 호스트 사이에 IPv4망이 있을 경우, IPv6패킷을 IPv4패킷 속에 캡슐화하여 사용
-호스트와 라우트 간의 터널은 자동으로 설정
-라우터 간의 터널은 수동으로 설정
ICMP
-TCP/IP에서 IP패킷을 처리할 때 발생되는 문제를 알리거나, 진단 등과 같이 IP계층에서 필요한 기타 기능들을 수행하기 위해 사용되는 프로토콜
-IP와 쌍을 이루며 동작
-IP 계층의 일부이며 IP 데이터그램의 데이터 부분에 포함되어 전달
ICMP메시지 유형 분류
-오류 보고 메시지
-정보성 메시지 : 네트워크 상태조사 등 (ping 명령어)
IGMP
-서브넷 상의 멀티캐스팅 그룹 멤버십 제어를 위한 프로토콜
-서브넷 상에서 호스트들이 어떤 멀티캐스팅 그룹에 속하는지 라우터가 알도록 하기 위한 신호프로토콜
ICMPv6
-ICMPv6은 ICMPv4와 달리 기존의 ICMP 기능에다 IGMP, ARP기능도 모두 포괄하도록 만들어짐
-오류 보고
-정보성 메시지 (ping 명령어 등)
-이웃,라우터 탐색
-그룹 멤버십 관리 (IGMP의 역할)
Mobile IP
-네트워 계층 프로토콜인 IP에 이동성 지원 기능을 추가시킨 개념
-이동단말이 이동함에 따라 그 단말이 속하게되는 서브넷 IP주소가 수시로 바뀌어도 IP주소를 변경하지 않음
주소 바인딩
-주소 이동성을 구현하기 위해 이동 호스트는 다음 2개의 IP 주소가 필요
-HoA(Home Address): 이동 호스트를 식별하고 세션 연결용의 영구적 고정 주소
-CoA(Care-of-Address): 호스트 이동시 변하며 경로배정과 전달용의 동적인 주소
라.라우팅
거리 벡터 라우팅
-RIP, IGRP
-모든 이웃 라우터에게 자신이 가진 모든 정보를 주기적으로 알려줌
-목적지까지 경로를 제공하지 않으며 단지 목적지까지의 최소비용만 제공
특징
-노드 변경 시 주기적으로 이웃한 노드와 자신의 라우팅 테이블을 공유
-소규모 네트워크에 적합
장점: 네트워크의 distance 값에 대한 정보만 저장하기 때문에 장비의 메모리를 적게 사용
단점: 일정 시간마다 주기적으로 라우팅 정보를 발송함으로 네트워크 트래픽은 더 발생, 무한루프에 빠질 수 있음
링크 상태 라우팅
-IS-IS, OSPF, SPF
-라우팅 테이블을 구성하기 위해 딕스트라(dijkstra)알고리즘을 사용
-네트워크에 대한 전반적인 데이터베이스를 가짐 = 장비의 메모리 사용이 많음
-네트워크 변화가 생길 때 마다 라우팅 정보를 발송
-대규모 네트워크에 적합, 라우팅 테이블을 교환하지 않고 Link State DB가 동기화되어 스스로 라우팅 테이블을 구축 후 테이블에 저장
경로 벡터 라우팅
-BGP
-소스부터 모든 목적지까지의 경로는 스패닝 트리에 의해 결정
계층적 라우팅
-네트워크의 각 자치시스템을 다시 영역으로 나누는 등에 의한 계층적 관리 방식
-결국 라우팅 테이블의 항목 수를 줄어들게하고 전달되어야 할 라우팅 정보는 줄이는 등으로 라우팅 부하 경감 및 유지관리 편리성을 얻음
OSPF
-링크상태 라우팅 프로토콜에 기초하여 자치시스템 내부의 라우터들끼리 라우팅 정보를 교환하는 라우팅 프로토콜
-동일 자치시스템 내에 있는 라우터끼리만 라우팅
-네트워크를 영역 단위로 나누어 구분
RIP
-거리벡터 알고리즘에 기초하여 개발된 라우팅 프로토콜
-소규모 또는 교육용 등 비교적 간단한 네트워크에 주로 사용
-늦은 수렴성, 큰 트래픽 부하, 무한 루프 발생의 문제가 있음
BGP
-자치시스템 상호 간에 적용되는 라우팅 프로토콜
-독립적으로 운영되는 대규모 네트워크 간에 주로 사용되는 라우팅 프로토콜
-무한 루프의 문제점이 없도록 함
-클래스 없는 주소체계 지원
멀티캐스팅
-하나의 송신지에서 동시에 여러 수신자에게 전달하는 기술 또는 프로세스
-단일 발신지에서 여러 패킷을 동시에 여러 목적지에 보내기 보다는 네트워크(주로 라우터)쪽에서 이의 복사본을 여러 곳에 보내는 것이 목표
-모든 구성원에게 발송하는 브로드캐스트와 달리 특정 그룹에 속한 곳에만 프레임이 전달됨
-멀티캐스트는 특정 호스트 집단으로의 단방향성을 갖음
참고문헌
가.
http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=439&id=747
나.
https://dreamlog.tistory.com/547
https://m.blog.naver.com/hatesunny/220790654612
https://m.blog.naver.com/skyjjw79/220826944561
https://jwprogramming.tistory.com/35
https://ensxoddl.tistory.com/164
다.
http://ktword.co.kr/abbr_view.php?m_temp1=1859
라.
http://nologout.blog.me/221337282351
http://www.ktword.co.kr/abbr_view.php?nav=&m_temp1=1456&id=344
'학위공부 > 독학사 요점정리' 카테고리의 다른 글
[독학사/컴공/컴퓨터네트워크]7.응용 계층 (0) | 2020.07.01 |
---|---|
[독학사/컴공/컴퓨터네트워크]6.전송 계층 (0) | 2020.06.30 |
[독학사/컴공/컴퓨터네트워크]4.근거리 통신망 (0) | 2020.06.30 |
[독학사/컴공/컴퓨터네트워크]3.데이터 링크 계층 (0) | 2020.06.30 |
[독학사/컴공/컴퓨터네트워크]2.물리계층 및 매체 (0) | 2020.06.30 |