TCP/IP Model(= DoD Model)과 OSI 7 Layer Model 1
## TCP/IP Model(= DoD Model)과 OSI 7 Layer Model ##
[1. TCP/IP Model]
=> 인터넷 표준 Protocol인 TCP/IP의 Model.
=> Dod 4계층 Model이라고 표현하기도 한다.
=> 실제 우리가 사용하는 Protocol에 대한 모델이다.
[2. OSI 7 Layer Model]
=> Reference Model(참조 모델)
=> ISO(국제 표준화 기구)에서 발표한 모델.
--------------------------------------------------------------------------------------------------------------------------
** OSI 7 Layer Model **
- 상위 계층 : Application -
7계층 : Application
6계층 : Presentation
5계층 : Session
- 하위 계층 : Data-Flow -
4계층 : Transport
3계층 : Network
2계층 : Data-Link
1계층 : Physical
4계층 : Transport
3계층 : Network
2계층 : Data-Link
1계층 : Physical
--------------------------------------------------------------------------------------------------------------------------
- Layer 4 : Transport(전송) -
1. L4 역할
=> Port 번호를 사용하여 Service 식별.
=> TCP의 경우 Segmentation, Flow-Control, Error-Control..
2. L4 Protocol
1) TCP : 연결 지향성, 신뢰성, Segmentation 수행 o
2) UDP : 비연결 지향성, 비 신뢰성, Segmentation 수행 x
3. L4 정보 => Port 번호(서비스 식별자) - 범위 : 0 - 65,535
1) Well-known : 0 - 1,023
2) Registered : 1,024 - 49,151
3) Dynamic : 49,152 - 65,535 (보통 출발지의 port number로 사용. Source port)
4. L4 PDU(Protocol Data Unit)
1) TCP 헤더 + DATA => Segment
2) UDP 헤더 + DATA => Datagram
5. L4 Device
=> L4 Switch
--------------------------------------------------------------------------------------------------------------------------
- Layer 3 : Network -
1. L3 역할
=> 'Logical Address'를 사용하여 서로 다른 Network 사이에서 트래픽 전송을 담당.
=> L3 Device(ex. Ruoter)는 자신이 수신한 Packet의 '목적지 IP 주소'와 자신의 주소록인 'Routing Table'을
비교하여, 'Best Path(최적경로)'를 선택하여 전송한다.
-> 위와 같은 동작을 'Routing'이라고 한다.
2. L3 Protocol
=> IPv4/IPv6 / IPX / Apple talk ..
3. L3 정보
=> Logical(논리적 주소)
->IPv4 프로토콜을 사용하는 경우 IPv4 주소
->IPv6 프로토콜을 사용하는 경우 IPv6 주소
->IPX 프로토콜을 사용하는 경우 IPX 주소
...
4. L3 PDU(Protocol Data Unit)
=> IP헤더 + L4 헤더 + DATA -> Packet(=IP Datagram)
5. L3 Device
=> Router / L3 Switch
===================================================================================================================
** IP(Internet Protocol) Address **
[1.IPv4]
=> 32bit, 2^32 = 약 42억 9천만개
=> 인간이 이해하기 편하게 8bit(= 1octet)씩 구분하여 10진수로 변환시킨 값으로 표현한다.
00000000.00000000.00000000.00000000 (0.0.0.0)
~
11111111.11111111.11111111.11111111 (255.255.255.255)
~
11111111.11111111.11111111.11111111 (255.255.255.255)
=> IP Address = [ Network ID ] + [ Host ID ]
<ex. 교실 이름 + 학생 번호 비유>
<ex. 교실 이름 + 학생 번호 비유>
=> 만약 [211.100.7.5]라는 IP주소를 확인하였다.
이 경우 어디까지가 Network ID이고 어디부터가 Host ID인가?
이 경우 어디까지가 Network ID이고 어디부터가 Host ID인가?
-- 2가지로 구분할 수 있다. --
1) Classful 방식(오늘날 사용 x)
-> IP 주소의 첫번째 Octet을 보고 Network ID 범위를 구분한다.
1) Class A (0-127) => 앞의 8bit까지 Network ID, 뒤의 24bit는 Host ID.
Class A 대역을 할당받게 되면, 2^24-2개의 IP주소를 사용할 수 있다.
Class A 대역을 할당받게 되면, 2^24-2개의 IP주소를 사용할 수 있다.
2) Class B (128-191) => 앞의 16bit까지 Network ID, 뒤의 16bit는 Host ID.
Class B 대역을 할당받게 되면, 2^16-2개의 IP주소를 사용할 수 있다.
Class B 대역을 할당받게 되면, 2^16-2개의 IP주소를 사용할 수 있다.
3) Class C (192-223) => 앞의 24bit까지 Network ID, 뒤의 8bit는 Host ID.
Class C 대역을 할당받게 되면, 2^8-2개의 IP주소를 사용할 수 있다.
Class C 대역을 할당받게 되면, 2^8-2개의 IP주소를 사용할 수 있다.
모든 주소의 첫번째, 마지막은 할당X
첫번째 = 네트워크 주소랑 겹침. 마지막 = 예약(BroadCast 용) 전체.
첫번째 = 네트워크 주소랑 겹침. 마지막 = 예약(BroadCast 용) 전체.
A,B,C는 특정장비 하나를 가리킴. D,E는 다른 목적으로 예약, 장비에 입력X
4) Class D (224-239) => Multicast 주소 예약.
4) Class D (224-239) => Multicast 주소 예약.
5) Class E (240-255) => 연구용 주소/Broadcast 예약.
2) Classless 방식
-> 기존 Classful 방식은 오늘날 사용되지 않는다.
이유는? IP 주소의 낭비가 심하기 때문이다.
-> 결과적으로 오늘날에는 classful 네트워크를 필요한 크기로 쪼개어 사용하거나
혹은 묶어서 사용할 수 있는 'Classless'방식을 사용한다.
** subnetting **
-> Classful 네트워크를 요구조건에 따라서 쪼개는 것을 의미.
다음 공식에 따라서 Subnetting 수행한다.
1) Network 숫자가 조건인 경우
2^n >= 조건
n개 만큼 Host 필드의 왼쪽(->)부터 잘라서 network ID범위로 넘겨준다.
2) 사용할 Host 숫자가 조건인 경우
2^n - 2 >= 조건
n개 만큼 Host필드의 오른쪽(<-)부터 잘라서 network ID 범위로 넘겨준다.
--------------------------------------------------------------------------------------------------------------------------
Ex 1> [211.100.10.0] 네트워크 대역을 2개의 네트워크로 Subnetting 하시오.
2^n >= 2
n = 1
Network ID = 211.100.10.0(Class C)
<Network ID> <Host ID>
211.100.10. |0|0000000
=========================
211.100.10.|0| 0000000 => 211.100.10.0[Network ID] (1~ 126)
211.100.10.|1| 0000000 => 211.100.10.128[Network ID] (129~ 254)
2^n >= 2
n = 1
Network ID = 211.100.10.0(Class C)
<Network ID> <Host ID>
211.100.10. |0|0000000
=========================
211.100.10.|0| 0000000 => 211.100.10.0[Network ID] (1~ 126)
211.100.10.|1| 0000000 => 211.100.10.128[Network ID] (129~ 254)
1) Subnet의 갯수는? 2개
2) 각 Subnet 당 할당 가능한 IP 주소의 갯수는? 126개 (2^n - 2 n은 Host bit수)
3) Subnet Mask는?
=> Subnetting을 수행한 관리자의 경우, 각 IP주소가 어떤 Subnet에 할당 되어 있는지 구분 가능하고,
몇 bit까지가 Network ID인지 확인이 가능하다.
하지만 Device의 경우, 특정 IP주소가 어떤 Subnet에 포함되어 있고, 또 몇 bit까지가 Network ID인지
확인이 불가능하다.
2) 각 Subnet 당 할당 가능한 IP 주소의 갯수는? 126개 (2^n - 2 n은 Host bit수)
3) Subnet Mask는?
=> Subnetting을 수행한 관리자의 경우, 각 IP주소가 어떤 Subnet에 할당 되어 있는지 구분 가능하고,
몇 bit까지가 Network ID인지 확인이 가능하다.
하지만 Device의 경우, 특정 IP주소가 어떤 Subnet에 포함되어 있고, 또 몇 bit까지가 Network ID인지
확인이 불가능하다.
때문에 관리자가 Subnet Mask를 IP주소와 같이 입력하여 몇 bit까지가 Network ID인지 알려줘야 한다!!!
Subnet mask는 Network ID 자리에 숫자 '1'을 채우고, Host ID자리에는 숫자 '0'을 채운 것.
Subnet mask는 Network ID 자리에 숫자 '1'을 채우고, Host ID자리에는 숫자 '0'을 채운 것.
11111111.11111111.11111111.10000000
=> 255.255.255.128
=> 255.255.255.128
IP가 할당된 장비는 자신의 IP 주소와 Subnet Mask를 AND연산하여 Network ID를 구할수있다!!!!
Ex 2> [211.100.10.0] 네트워크 대역을 60명의 사용자가 사용하기 적당한 크기로 Subnetting 하시오.
[2.IPv6]
[2.IPv6]
Prefix는? /1이 들어간 자리의 개수
Subnet Mask -> 255.255.255.192 => 11111111.11111111.11111111.11000000
Subnet Mask -> 255.255.255.192 => 11111111.11111111.11111111.11000000
Prefix => /26
Ex 3> [150.100.7.0/24] 대역의 Network를 25개의 Host가 사용하기 적당한 크기로 Subnetting 하시오.
<Network ID> <Host ID>
150.100.00000111. 00000000
2^n - 2 >= 25
n = 5
<Network ID> <Host ID>
150.100.00000111.|000| 00000
150.100.00000111. 00000000
2^n - 2 >= 25
n = 5
<Network ID> <Host ID>
150.100.00000111.|000| 00000
150.100.00000111.|000| 00000 0 (0 ~ 31)
150.100.00000111.|001| 00000 32 (32 ~ 63)
150.100.00000111.|010| 00000 64
150.100.00000111.|011| 00000 96
150.100.00000111.|100| 00000 128
150.100.00000111.|101| 00000 160
150.100.00000111.|110| 00000 192
150.100.00000111.|111| 00000 224
150.100.00000111.|001| 00000 32 (32 ~ 63)
150.100.00000111.|010| 00000 64
150.100.00000111.|011| 00000 96
150.100.00000111.|100| 00000 128
150.100.00000111.|101| 00000 160
150.100.00000111.|110| 00000 192
150.100.00000111.|111| 00000 224
1) Subnet의 갯수는? 8
2) 각 Subnet 당 할당 가능한 IP 주소의 갯수는? 30
3) Subnet mask는? 255.255.255.224
4) Prefix는? 27
댓글
댓글 쓰기