오늘 학습 주제
1. TCP/IP 통신 모델
2. TCP/IP Protocol
TCP/IP 통신 모델
- TCP/IP 통신 모델 -
OSI Model | TCP/IP Model | |
정의 | 네트워크 프로토콜을 설명하기 위한 일종의 참조 모델로서 설계 |
실제로 인터넷에서 사용되는 프로토콜을 설명하고 통합하기 위해 개발 |
계층의 수 | 7개의 계층 | 4개의 계층 |
명칭 | 1. 물리 2. 데이터 링크 3. 네트워크 4. 전송 5. 세션 6. 표현 7. 응용 |
1. 네트워크 액세스 2. 인터넷 3. 전송 4. 응용 |
설계의 출처 | 국제 표준화 기구(ISO)에서 제정 | 실제 인터넷 프로토콜을 기반으로 하며, ARPANET 등 초기 인터넷의 발전 과정에서 발전 |
사용 | 주로 교육과 이론적인 목적으로 사용 | 현업에서 많이 사용되고 있으며, 실제 인터넷 프로토콜을 기반으로 하기 때문에 네트워크 엔지니어링 및 구현에서 자주 참조 |
- 통신 체계와 Protocol -
통신체계 | 프로토콜 종류 | 용도 |
TCP/IP | HTTP, Telnet, TCP, UDP... | 인터넷과 LAN에서 사용 |
IPX.SPX | IPX, SPX, NPC... | Novel 사가 개발 및 판매하는 Netware 시스템에서 사용 |
Appltalk | DDP, RTMP, ATP... | Apple사 제품의 LAN에서 사용 |
DECnet | DPR, NSP, SCP... | 구 DEC사의 미니컴퓨터에서 사용 |
XNs | IDP, SPP, PEP... | Xerox 사의 네트워크에 사용 |
Internt > Public Network > 비상업적 통신 모델 > TCP/IP
- 통신 규약(protocol) -
Vendor-Specific Protocols (독점적 프로토콜) |
Open Protocols (비독점적 프로토콜) |
|
정의 | 정 기업이나 단체가 개발하거나 소유하며 해당 프로토콜을 사용하는 것에 대한 독점적인 권한을 갖고 있는 프로토콜 |
여러 업체나 단체가 함께 개발하거나 사용할 수 있는, 개방적이고 중립적인 특성을 갖는 프로토콜 |
특징 | • 해당 프로토콜을 사용하려면 특정 업체의 제품을 사용해야 하거나 해당 업체의 규칙을 지켜야 함 • 타 프로토콜과 호환 불가 |
• 프로토콜은 특정 기업이나 단체에 독점되거나 특정 기술 생태계에 제한되지 않음 • 다양한 제품 및 서비스 간에 상호 운용성을 제공 |
예시 | SNA, IPX/SPX, AppleTalk 등 | TCP/IP, 802.3 등 |
- OSI Reference Model과 TCP/IP 비교 -
- Sniffing 환경구성 -
정의 | 패킷 스니핑(sniffing) 또는 프로토콜 분석(protocol analysis) 툴 |
특징 | 네트워크를 통해 전달되는 데이터를 수집하고 해석 |
툴 |
|
- 패킷 수집과 패킷 분석 -
LINUX | MS-Window | |
패킷 수집 | TCPdump | TShark |
패킷 분석 | Wireshark | Wireshark |
- 무차별모드(Promiscuous mode) -
무차별 모드(Promiscuous mode) | |
정의 | 데이터 링크 계층과 네트워크 계층의 주소 필터링을 해제한 모드 |
특징 | • 주소 지정에 관계없이 호스트의 프로세서에 모든 패킷을 전달 • 패킷이 CPU에 전달되면 분석을 위해 패킷 스니핑 애플리케이션에 넘겨짐 • 유닉스 또는 리눅스에서는 ‘ifconfig eth0 promisc’로 설정 • Window에서는 winpcap / npcap설치로 무차별 모드 설정 |
- Packet Sniffing 환경 -
< 허브 환경에서의 스니핑 >
허브를 통해 전송되는 트래픽은 해당 허브에 연결된 모드 포트를 통과하며
허브는 어떤 패킷이든 플러딩으로 전송한다
그렇기에 허브 안 모든 트래픽을 같은 허브의 스니퍼가 확인 가능하다
(위와 같은 이유로 사내 모든 네트워크를 허브로 사용하는 것은 위험하다)
< 스위치 환경에서의 스니핑 >
망운용을 위한 브로드멀티를 제외하면
스위치는 트래픽이 유입되지 않는다
그렇기에 관제범위가 좁다
스위치 환경에서의 스니핑 | |
종류 | • 포트 미러링(port mirroring): 스위치에서 가장 일반적으로 사용되는 스니핑 기술 스위치의 특정 포트에서 발생하는 트래픽을 다른 포트로 복사하는 기능을 제공 • 허빙 아웃(hubbing out): 허브(Hub)를 사용하여 네트워크 트래픽을 가로채고 모니터링하는 기술 • 탭 사용 (tapping): 탭(tap)을 사용하여 트래픽을 모니터링하고 분석 |
- 포트 미러링 -
포트 미러링 | |
정의 | 네트워크 스위치에서 특정 포트로 들어오는 트래픽을 다른 포트로 복사하는 방식의 트래픽 모니터링 기술 |
특징 |
|
< Switched Port Analyzer (SPAN)>
Switched Port Analyzer(SPAN) | |
정의 | 네트워크 스위치에서 트래픽을 모니터링하기 위한 기술 |
특징 |
|
< Remote Switched Port Analyzer (RSPAN) >
Remote Switched Port Analyzer(RSPAN) | |
정의 | 스위치 간에 있는 원격 위치에서 트래픽을 모니터링하기 위한 Cisco 네트워크에서 사용되는 기술 |
특징 |
|
- 허빙 아웃(hubbing out) -
허빙 아웃 (hubbing out) | |
정의 | 네트워크 환경에서 허브(Hub)를 사용하여 네트워크 트래픽을 가로채는 것 |
특징 |
|
- 탭 사용 (tapping) -
탭 사용(tapping) | |
정의 | 탭(Tap)은 네트워크에서 트래픽을 모니터링하고 분석하기 위한 장치로, 네트워크 케이블에 연결되어 트래픽을 복사하고 모니터링 도구로 전달하는 역할 |
특징 |
|
TCP/IP Protocol
- TCP/IP Protocol Stack -
TCP/IP Protocol Stack | |
정의 | 인터넷을 기반으로 한 통신에서 사용되는 프로토콜의 집합 |
특징 |
|
- TCP Header -
TCP Header | |
정의 | TCP 세그먼트에 대한 제어 정보를 포함하는 부분으로 데이터의 신뢰성을 제공하고 통신 흐름을 제어하는 역할 기본이 20바이트이며 옵션을 포함한 경우 최대 60바이트로 구성 |
특징 |
|
- TCP 연결 관리 -
TCP 연결 관리 | |
정의 | TCP 프로토콜을 사용하여 양 끝 단의 호스트 간에 연결을 설정, 유지, 종료하는 프로세스 |
특징 |
|
- TCP연결 설정(3 way handshake) -
3-way handshake | |
정의 | TCP 연결을 설정하기 위한 절차로, 클라이언트와 서버 간에 세션을 확립하는 과정 세그먼트 교환을 통해 이루어지며 3 단계로 구성 |
특징 |
|
- 데이터 전송 전 (syn = 1): 3 way handshake(가상회선 설정) -
TCP: 데이터가 잘 전송되었는지(전송 유무) 확인
SN에 Data Size가 합쳐져서 AN으로 리턴(AN = SN + DataSize)
비정상적인 트래픽이 전송되면 AN값이 다르니 맞을때까지 재전송
시간을 확인해서 응답이 없으면 재전송
- 데이터 전송 후(syn=0): 연결 종료(4-way Handshake) -
4-way handshake | |
정의 | TCP 연결을 종료하기 위한 절차로, 클라이언트와 서버 간에 연결을 해제하는 과정 4 단계로 구성 |
특징 |
|
- UDP Header -
UDP Header | |
정의 | UDP 세그먼트의 헤더 부분을 나타내며, 데이터그램을 UDP로 전송할 때 사용 |
특징 | • Data 전송을 위하여 사전에 필요한 Process가 없다 • Best-Effort Delivery ( 데이터의 전송을 최선의 노력으로 수행하지만, 어떠한 신뢰성이나 보장이 없는 서비스 ) • 연결 지향적이지 않고 신뢰성이 낮은 프로토콜이기 때문에 신뢰성 보장 X |
-UDP와 TCP 차이-
UDP | TCP | |
Protocol | Message-Oriented Transport Protocol | Stream-Oriented Transport Protocol |
Payload | 상위계층에서 payload 된 데이터를 단편화하지 않음 | 상위계층에서 payload 된 데이터를 단편화 |
흐름제어 | 흐름 제어나 혼잡 제어가 없음 | 흐름 제어 및 혼잡 제어 메커니즘이 내장되어 있어 데이터의 흐름을 조절하고 네트워크 혼잡을 방지 |
- UDP 기반의 애플리케이션 데이터 전송 -
- TCP 기반의 애플리케이션 데이터 전송 -
< IP header>
IP Header | |
특징 | • IP 헤더는 총 20Byte의 기본 길이와 옵션을 사용해 크기가 최대 60Byte까지 가 질 수 있음 • FCS는 데이터 전송 도중에 발생할 수 있는 오류를 감지하기 위한 체크섬 또는 CRC (Cyclic Redundancy Check) 값 |
Field |
|
- MTU (Maximum Transfer Unit) -
네트워크 기기가 전송할 수 있는 최대 전송 단위
현재 대부분의 네트워크 환경이기 때문에 MTU는 1500바이트로 통용
네트워크 환경에 따라 각각의 크기는 다음과 같다
전송매체 | MTU(bytes) |
Internet IPv4 Path MTU | 최소 68 |
Internet IPv6 Path MTU | 최소 1280 |
Ethernet v2 | 1500 |
Ethernet LLC(Logical Link Control) SNAP (Subnetwork Access Protocol) PPPoE(P2P over Ethernet) |
1492 |
Ethernet Jumbo Frames | 1501~9216 |
WLAN(802.11) | 7981 |
Token Ring(802.5) | 4464 |
FDDI | 4352 |
- MSS(Maximum Segment Size) -
MSS(Maximum Sefment Size) | |
정의 | TCP상에서 전송할 수 있는 사용자 데이터의 최대 크기 MSS = MTU - IP Header 크기 (최소 20 Byte) - TCP Header 크기 (최소 20 Byte) |
특징 | • 3계층에서 1500을 넘어가면 안됨 • 실제 전송되는 데이터 길이는 1518byte |
- 단편화 -
단편화(Fragmentation) | |
정의 | 네트워크 통신에서 큰 데이터 패킷을 작은 조각으로 나누는 프로세스를 의미 |
특징 | • MTU가 큰 네트워크에서 MTU가 작은 네트워크로 패킷이 전송될 경우 패킷을 나눠서 보내져야 함 • 데이터그램의 재조립은 최종목적지 호스트에 의해서만 수행 • 재조립으로 인해 발생하는 비효율성 때문에 전송 중 재조립 안됨 • 단편화보다는 재조립이 시간 오래 걸리기에 매우 잘게 나눈 데이터로 공격하면 조립하다 시스템 오류 발생 • 단편화와 관련된 필드 : Identification, Flag, Fragmentation offset |
- TTL -
TTL(Time To Live) |
|||
정의 | 컴퓨터 네트워크에서 패킷이 유효한 시간 동안 얼마나 유지되는지를 나타내는 값 |
||
특징 | • 패킷 수명을 제한하기 위해 데이터그램이 통과하는 최대 홉(hop)수를 지정 • 패킷 전달과정에서 라우터와 같은 전송장비를 통과 할 때마다 TTL값 감소 • TTL이 0이 되면 라우터에서 폐기하여 불필요한 패킷이 네트워크에 방치 되는 것을 방지 • OS종류와 버전에 따라 TTL 값이 다름 |
||
OS별 TTL 값 |
OS / Version | TCP TTL | UDP TTL |
Linux | 64 | 64 | |
HP/UX 10.01 | 64 | 64 | |
Solaris 2.z | 255 | 255 | |
Window Server 2008 | 128 | 128 | |
Windows 10 | 64 | 64 |
'SK shieldus Rookies 16기' 카테고리의 다른 글
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(19일차) - 수정 중 (0) | 2023.11.16 |
---|---|
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(18일차) (0) | 2023.11.15 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(16일차) (0) | 2023.11.13 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(14일차) (0) | 2023.11.10 |
[SK shieldus Rookies 16기] 클라우드 기반 스마트 융합 보안 과정 교육 정리(13일차) (0) | 2023.11.08 |