TCP/IP 네트워크 구조 TCP/IP 개요 TCP/IP 프로토콜 한빛미디어(주).

Slides:



Advertisements
Similar presentations
6 장. 네트워크 개론 네트워크 장비, 프로토콜, 통신망. 개요 네트워크란 ? 네트워크의 종류 데이터전송방식 네트워크 장비 프로토콜의 종류 IP 주소체계 네트워크 토폴로지 통신망 네트워크진단 명령어.
Advertisements

인터넷 정보관리 Internet Information Management. 학습내용 PART 1 정보통신윤리, 네티켓 및 컴퓨터의 개요 PART 2 인터넷의 이해 - 인터넷의 개요, 인터넷관련 법규 PART 3 인터넷 서비스 PART 4 사용자 환경구축 및 홈페이지 제작.
AMAN2002 를 이용한 TCP/IP 프로토콜 분석 및 네트워크 프로그래밍 www. nms4you.com 1 AMAN2002 추가 기능 실습 Chapter 13:
멀티미디어 서비스를 위한 IP 네트워크 순천향대학교 정보기술공학부 이 상 정
제 20 장 TCP 대용량 데이터 흐름.
Chapter 03. 네트워크 보안 : 길을 지배하려는 자에 대한 저항
TCP/IP 통신망 특론 3장 인터넷프로토콜( IP ).
Chapter 8 Authorization
7장. TCP와 UDP.
TCP/IP 네트워크 제 26 장 Telnet과 Rlogin 정보통신연구실.
제 13 장 인터넷 그룹 관리 프로토콜.
컴퓨터 네트워크 Chapter 5-2 컴퓨터 네트워크.
Next Generation: IPv6 and ICMPv6
Chapter 06. 프로토콜.
22 장 프로세스간 전달 : UDP와 TCP 22.1 프로세스간 전달 22.2 사용자 데이터그램 프로토콜
1. 왜 의사헤더를 추가하나? 1 / 32 UDP 데이터그램이 목적지에 제대로 전송됐는지 확인하기 위해
제 1장 인터네트워킹.
Dept. of Computer Engineering, Hannam Univ. Won Goo Lee
2장. TCP/IP, 서브넷팅 2012년 2학기 중부대학교 정보보호학과 이병천 교수.
20 장 네트워크층 프로토콜 : ARP, IPv4, ICMP, IPv6, ICMPv6
제 9 장 ICMP 목원대학교 정보통신공학과 이 명 선.
Internet Control Message Protocol (ICMP)
Network 네트워크 이론 및 실습 TCP / IP 4장.
ARP TARM PROJECT 1조 신영민.
PART 01 개념 컴퓨터 네트워크 Chapter 3 OSI 참조모델과 인터넷 임효택.
10. About TCP / IP SPARCS 08 우성필.
제 4장 주소변환 프로토콜 (ARP : Address Resolution Protocol)
제 18 장 TCP/IP 연결 확립과 종료 정보통신연구실.
네트워크 보안 TCP/IP 네트워크통신 개념.
Chapter 02 네트워크에 대한 이해.
Chapter 8 목차 8.1 네트워크 보안이란 무엇인가? 8.2 암호학의 원리 8.3 메시지 무결성 8.4 종단점 인증
NAC Test 시나리오 내부단말 통제 보안 BMT 시나리오
17장 네트워크 Section 1 네트워킹의 개요와 java.net 패키지 Section 2 인터넷 주소와 URL
PART 02 프로토콜 컴퓨터 네트워크 chapter 06 트랜스포트 계층 임효택.
Chapter 05 목록화.
Network Security Footprint & Scan.
정보보호 실습 #2 네트워크 스캐닝 Choong Seon Hong Networking Lab.
세미나.. NETWORK??!! 저자 : 장경칩 도전하라 창조의 세계로(SINCE 1992) - 장경칩.
Access Control Lists Access Control List
Network Layer: ARP, ICMP (IGMP).
PART 01 개념 컴퓨터 네트워크 Chapter 3 OSI 참조모델과 인터넷 임효택.
제 21 장 TCP 타임아웃과 재전송.
제 21 장 TCP 타임아웃과 재전송 정보통신연구실.
3부 해킹 전 정보 획득 Chapter 6. 풋프린팅과 스캔
TCP/IP와 인터넷 제 1 장 인터넷 개요 및 역사.
DHCP 박윤환 윤준호.
TCP/IP 통신망 특론 2장 Link Layer 컴퓨터 네트워크 실험실 이희규.
Network Programming(1)
IP(Internet Protocol)
Chapter 15 Transmission Control Protocol (TCP).
제 24 장 그 밖의 TCP 기능과 성능 정보통신연구실.
2장. TCP/IP, 서브넷팅 2012년 2학기 중부대학교 정보보호학과 이병천 교수.
네트워크와 소켓 프로그래밍 Chapter 01. * 학습목표 TCP/IP 프로토콜의 동작 원리를 개관 소켓의 기본 개념을 이해
5장 RARP (Reverse Address Resolution Protocal) 시스템 소프트웨어 실험실 남 상 온
Transmission Control Protocol (TCP)
Chapter 04. OSI 참조 모델.
팀 프로젝트 [데이터통신] 김진억 성보라 문제명 박상민 이혜영.
기술가정 2학년 2학기 4.컴퓨터와 생활 > 2) 인터넷의 활용 > 1/7 인터넷이란 무엇일까.
컴퓨터 개론 √ 원리를 알면 IT가 맛있다 쉽게 배우는 컴퓨터 기본 원리 한빛미디어 교재출판부.
8 네트워크 계층 프로토콜 학습 목표 IPv6의 필요성과 헤더 구조를 이해한다. 이동 IP 프로토콜의 터널링 원리를 이해한다.
김 형 진 전북대학교 IT응용시스템공학과 네트워크의 기본 Chapter 김 형 진 전북대학교 IT응용시스템공학과.
인터넷 서비스에는 어떤 것들이 있을까? 기술가정 2학년 1학기
제 11장 User Datagram Protocol(UDP)
컴퓨터활용능력 필기 2급 정리.
TCP/IP 인터네트워킹 INTERNETWORKING with TCP/IP <vol
Chapter 10 Mobile IP.
Part TCP / IP 1. TCP / IP 프로토콜 2. 기본 프로토콜.
제 9 장 ICMP 9.1 메시지 유형 9.2 메시지 형식 9.3 오류 보고 9.4 질의 9.5 검사합 9.6 ICMP 설계
Information Security - Network Scanning.
6. 오류 보고 체계 (ICMP) (6장. 인터넷과 IP)
Presentation transcript:

TCP/IP 네트워크 구조 TCP/IP 개요 TCP/IP 프로토콜 한빛미디어(주)

TCP/IP 프로토콜의 역사 알파넷(ARPAnet : 미 국방부 첨단연구계획위원회 통신망) 1980년대에 들어서며 알파넷 사용자들의 폭주로 인하여 알파넷을 미 국방성만이 사용할 수 있는 밀넷(MILnet)과 일반 사용자들의 정보교환을 위한 알파넷으로 구분 밀넷과 알파넷이 통합된 통신망을 달파넷(DARPnet)이라고 불렸으며, 이 통신망이 후에 인터넷의 전신이 됨

TCP/IP 네트워크 구조

네트워크 인터페이스 계층 이더넷(Ethernet) 프로토콜) Preamble : 동기화에 사용되는 64비트 필드로서 0과 1로 구성되고, 네트워크 장치가 패킷을 받아서 이더넷 프레임의 시작 부분을 결정하고 동기화할 때 사용 목적지 주소(Destination Address): 목적지 시스템의 이더넷 주소 출발지 주소(Source Address):패킷을 전송하는 호스트의 이더넷 주소 데이터 형식(Type):이더넷 프레임 상단의 데이터의 종류 데이터 : 상위 레이어의 프로토콜에 의해 사용되는 정보가 포함되어 있는 필드 CRC : 에러 검출을 위해 사용되는 필드로, 수신측이나 송신측 호스트 시스템에 의해 프레임에 포함되는 내용을 계산한 값. 값이 다르면 해당 프레임은 무시됨. [그림 4-2] 이더넷 헤더

인터넷 계층 IP 주소 체계 IP(Internet protocol) 가장 대표적인 네트워크 계층의 프로토콜로, 하위 계층의 서비스를 이용하여 두 노드간의 데이터 전송 경로를 확립해 주는 역할을 한다. IP 주소 체계 [그림 4-5] IP 주소 클래스 2

IP 헤더(1/2)

IP 헤더(2/2) 버전 : IP의 버전 정보, ex) 0x4는 IPv4를 의미함 전체 길이 : 헤더를 포함한 데이터그램의 전체 길이 식별자 : 단편화와 관련된 값, 단편화될 때 이 값을 복사하며, 단편화된 데이터그램이 생성될 때마다 1씩 증가 플래그 : 단편화되었는지와 단편화된 조각이 몇번째 조각인지 알려줌 단편 오프셋 : 기존 데이터그램 내에서 단편의 상대적 위치를 의미 프로토콜 : IP 계층의 서비스를 사용하는 상위 계층 프로토콜을 정의, 값이 1이면 ICMP, 6이면 TCP, 17이면 UDP를 나타냄 헤더 체크섬 : 오류 검사에 사용하며, 송신측에서 체크섬을 계산하여 전송함 출발지 주소 : 송신측의 IP 주소 목적지 주소 : 수신측의 IP 주소 옵션 : IP 헤더의 가변 부분으로 최대 길이는 40바이트

ARP 기능 IP에 해당하는 호스트의 하드웨어 주소를 찾아줌 [그림 4-7] ARP 헤더

ARP 헤더 하드웨어 타입(Hardware type) : 하드웨어 주소, 즉 MAC 주소의 타입 을 정의 프로토콜 타입: 맵핑될 프로토콜 주소의 타입을 정의 ex) 0x0800이면 IPv4와 맵핑됨 하드웨어 주소 크기 : 하드웨어 주소, 즉 MAC 주소의 바이트 크기 ex) 이더넷은 6 프로토콜 주소 크기: 맵핑될 프로토콜 주소의 바이트 크기 작동 코드 : 1 = ARP Request, 2 = ARP Reply, 3 = RARP request, 4 = RARP reply 출발지 이더넷/IP 주소 : 송신측 MAC/IP 주소 목적지 이더넷/IP 주소 : 수신측 MAC/IP 주소

RARP 데이터 링크 계층의 주소로부터 네트워크 계층의 주소를 얻어오는 프로토콜 디스크를 가지지 않은 호스트가 자신의 IP 주소를 서버로부터 얻어내려면 RARP라는 TCP/IP 인터넷 프로토콜을 사용해야 하며 일반적으로 자체의 디스크 기억 장치가 없는 워크스테이션이나 지능형 터미널에 의해 이용된다. RARP 패킷은 ARP 패킷과 동일한 형식을 갖는다.

ICMP 기능 ICMP 헤더 ICMP 프로토콜은 송신측의 상황과 목적지 노드의 상황을 진단한다. 코드 : 각 타입에 대한 코드 값 체크섬 : ICMP 메시지 자체(헤더 + 데이터)에 대한 오류를 검사하는 필드 나머지 헤더 : 타입과 코드에 따라 달라지는 부분 [그림 4-11] ICMP 패킷 헤더

ICMP 메시지 1 오류 진단용 메시지 라우터가 데이터그램을 라우팅할 수 없을 때 호스트가 데이터그램을 전달할 수 없을 때 Destination Unreachable Source Quench Redirection Time Exceeded Parameter Problems Error Reporting 라우터가 데이터그램을 라우팅할 수 없을 때 호스트가 데이터그램을 전달할 수 없을 때 혼잡으로 인해 데이터그램의 폐기를 알림 라우터가 최적 경로를 사용하지 않는 호스트 발견 시 대체 경로를 알리기 위해 사용 IP 헤더의 TTL 필드 값 만료를 나타냄 데이터그램의 헤더 에러 문제 발생 시 사용

ICMP 메시지 2 질의용 메시지 Echo IP 호스트의 진단에 사용 request and reply 필요한 왕복시간(Round Trip Time)을 결정 호스트가 라우터에게 서브넷 마스크 요청 다른 네트워크의 호스트에게 데이터 전송 시 자신의 네트워크에 연결된 라우터 주소 요청 Query Echo request and reply Timestamp Address mask Router solicitation and advertisement

TCP(Transmission Control Protocol) 기능 IP는 이때 데이터 패킷을 한 장소에서 다른 장소로 옮기는 역할을 한다면 TCP는 데이터의 흐름을 관리하고, 데이터가 정확한지 확인하는 역할을 한다. 높은 신뢰성 가상회선 연결 방식 연결의 설정과 해제 데이터 체크섬 시간 초과와 재전송 데이터 흐름 제어

TCP 연결 설정 (3-Way 핸드쉐이크) 호스트 A는 호스트 B에 연결을 설정하고 싶다는 요청과 함께 램덤하게 생성된 시퀀스 넘버 1000으로 SYN 패킷을 호스트 B에게 보낸다. 호스트 B는 역시 랜덤하게 생성한 시퀀스 넘버 4000으로 SYN 패킷에 ACK 번호 1001로 설정하여 호스트 A에게 보낸다. 이때의 ACK 번호는 대부분 A에게서 받은 SYN+1의 값을 가진다. 호스트 A는 호스트 B에게서 받은 시퀀스 넘버를 사용하여 ACK 번호 (SYN+1)을 호스트 B에게 보낸다. [그림 4-12] 3-웨이 핸드셰이킹

TCP 연결 종료 (4-Way 핸드쉐이크) 한쪽의 호스트에서 자신이 가지지 않은 포트의 연결 요청을 받은 경우 연결 최소를 의미하는 RST 세그먼트를 전송한다 . 한쪽 호스트에서 시스템의 이상으로 연결을 종료하고 싶을 때 RST 세그먼트를 보내 연결을 종료한다. 한쪽 호스트에서 상대 호스트가 장시간 동안 어떤 동작도 하지 않을 때 RST 세그먼트를 보내 연결을 재설정한다 [그림 4-13] 4-웨이 핸드셰이킹(4-way handshaking)

TCP 헤더

TCP 헤더(계속) 출발지 목적지 포트 번호 : 호스트에 있는 응용 프로그램의 포트 번호 순서 번호 : 전달되는 각 바이트에 대한 시퀀스 넘버로 1씩 증가 확인 번호 : 수신측에서 수신하고자 하는 바이트의 번호 헤더 길이 : TCP 헤더의 길이 예약 : 아직 사용하지 않는 필드로 값은 0 플래그 URG 1이면 마지막 필드인 긴급 포인터의 내용 실행 ACK 1이면 확인 번호 필드가 유효 PSH 1이면 송신자에게 높은 처리율 요구 RST 1이면 TCP 연결을 다시 설정 SYN 1이면 연결 요청과 설정, 확인 응답에서 순서 번호 동기화 FIN 1이면 TCP 연결 종료

UDP(User Datagram Protocol) UDP는 TCP와는 달리 비연결 프로토콜로서 상대방이 보낸 응답을 확인하지 않으며, 송신 시스템이 전송하는 데이터에 대한 목적지 시스템의 확인 절차가 생략되므로 네트워크에 부하를 걸지 않는 장점이 있다. 데이터 자체의 신뢰성이 없으므로 수신된 데이터의 무결성을 보장받지 못한다.  UDP의 특징 비연결 지향형 네트워크 부하 감소 비신뢰성 전송된 데이터의 일부가 소실됨

UDP 헤더 출발지/목적지 포트 번호 : TCP와 동일한 포트 번호를 사용하며, 응용 프로그램 계층 서비스에서 할당된 포트 번호 역시 TCP와 동일하다. 길이 : 헤더와 데이터를 합한 사용자 데이터그램의 전체 길이로 0~65,535의 범위를 갖는다. 체크섬 : 데이터그램의 헤더와 데이터 전체의 오류 검사를 위해 사용 한다. [그림 4-15] UDP 헤더

FTP 연결 설정 FTP( File Transfer Protocol) 기능 TCP 연결을 이용한 파일 전송 프로토콜 [그림 4-16] 컨트롤 연결 설정

FTP 데이터 연결 과정 클라이언트에서 임의의 포트를 열고 수동적 오픈 상태를 설정한다. 클라이언트에서 PORT 명령을 사용하여 열고 있는 포트 번호를 서버측에 전달한다. 서버측에서는 클라이언트가 보낸 임의의 포트를 받고 20번 포트를 능동적 포트 오픈 상태로 설정한다.

SMTP(Simple Mail Transfer Protocol) [그림 4-19] 메일 시스템 구성 요소

[그림 4-20] SMTP 프로세스 모델

SMTP 메일 트랜잭션

Telnet 원격 시스템에 표준 인터페이스를 제공하는 네트워크 가상 단말기(NVT, Network Virtual Terminal) 기능을 제공한다. 클라이언트와 서버가 통신 옵션을 교환할 수 있는 메커니즘을 제공한다. 예들 들어, 7비트 ASCII 코드로 데이터를 주고 받을 수도 있고 8비트 코드로 데이터를 주고 받을 수 있다. Telnet 프로토콜은 양단간의 통신이 대칭적으로 수행되며, 클라이언트측에서 항상 사용자 단말기가 사용되는 대신 임의의 프로그램이 클라이언트로 동작할 수 있다.

Telnet의 동작 프로세스 로컬 운영체제를 통해 사용자 단말기에서 클라이언트로 입력된 데이터들은 TCP/IP 네트워크를 통해 서버 컴퓨터로 전송된다. 데이터는 원격 운영체제에서부터 서버로 전달되며, 서버로부터 의사 단말기 엔트리 포인트를 통해 다시 운영체제로 넘겨진다. 운영체제는 클라이언트로 데이터를 전송하며, 수행되는 동안 출력은 상기 경로와 동일한 경로를 통해 전송된다.

TCP/IP 클라이언트와 서버 구조

Thank you