1 / 62

프로토콜에 대한 이해

2. 프로토콜에 대한 이해. What Is a Domain Namespace?. Root Domain. com. net. org. Top-Level Domain. nwtraders. Second-Level Domain. west. south. east. Subdomains. sales. FQDN: server1.sales.south.nwtraders.com. Host: server1. Standards for DNS Naming.

Download Presentation

프로토콜에 대한 이해

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 2 프로토콜에 대한 이해

  2. What Is a Domain Namespace? Root Domain com net org Top-Level Domain nwtraders Second-Level Domain west south east Subdomains sales FQDN: server1.sales.south.nwtraders.com Host: server1

  3. Standards for DNS Naming • The following characters are valid for DNS names: • A-Z • a-z • 0-9 • Hyphen (-) The underscore (_) is a reserved character

  4. DNS Clients DNS Servers DNS Servers on the Internet Root “.” Resource Record .com .edu Resource Record What Are the Components of a DNS Solution?

  5. What Is a DNS Query? • DNS clients and DNS servers both initiate queries for name resolution • An authoritative DNS server for the namespace of the query will either: • Check the cache, check the zone, and return the requested IP address • Return an authoritative, “No” • A non-authoritative DNS server for the namespace of the query will either: • Forward the unresolvable query to a specific query server called a Forwarder • Use root hints to locate an answer for the query DNS server에 name resolution요청하는 방법인 DNS Query가 Recursive(재귀) 와 iterative(반복) Query 2가지가 있다.

  6. Recursive query for mail1.nwtraders.com 172.16.64.11 Computer1 How Recursive Queries Work Recursive(재귀) Query는DNS client가 Local DNS Server에 Query를 보내는종류의 Query로 Query에 대한 응답이 올 때 까지 Query를 계속적으로 Query 보내는 방법을 말한다. DNS server checks the forward lookup zone and cache for an answer to the query Database Local DNS Server

  7. How Root Hint Works Root hints 란Local DNS Server에 Query에 대한 IP addresses 정 보가 없을 때 Local DNS Server가 DNS root servers에게 Query를 보내는 것을 말한다. Cluster of DNS Servers Cluster of Root (.) Servers Root Hints com DNS Server microsoft Computer1

  8. How Iterative Queries Work Iterative(반복) Query란 Root server가 하는 것이다. 이름 풀이를 할 때 영역 파일에 정보를 가지고 있을 때만 이름 풀이를 할 것이다. 만일 그렇지 않다면 다른 DNS server들에 Query를 보내는 것을 말한다. Iterative Query Root Hint (.) Local DNS Server 1 Ask .com Iterative Query .com Ask nwtraders.com 2 Recursive query for mail1.nwtraders.com Iterative Query 172.16.64.11 Authoritative Response 3 Computer1 nwtraders.com

  9. How Forwarders Work Forwarder(전달자)는 외부 DNS(Domain Name System) 이름에 대한 DNS 쿼리를 네트워크 외부의 DNS 서버에 Forward(전달)하는 데 사용되는 네트워크의 DNS 서버입니다. Iterative Query Forwarder Root Hint (.) Ask .com Iterative Query .com Ask nwtraders.com Recursive Query 172.16.64.11 Iterative Query Authoritative Response 172.16.64.11 Recursive query for mail1.nwtraders.com nwtraders.com Local DNS Server Computer1

  10. How DNS Server Caching Works Where’s Client A? ClientA is at 192.168.8.44 ClientA Client1 ClientA is at 192.168.8.44 Where’s Client A? Client2 Caching이란 최근에 접근한 정보를 액세스를 빠르게 하기 위해서 메모리에 저장하는 과정을 말한다.

  11. How DNS Data Is Stored and Maintained Namespace: training.nwtraders.msft DNS Server Zone File: Training.nwtraders.msft.dns DNS ClientC DNS ClientA DNS ClientB Resource record (RR)는 DNS 쿼리를 처리하는데 사용되는 정보를 포함하고 있는 표준 DNS 데이터베이스 구조 zone 은 DNS 데이터베이스에서 DNS 서버에 의해 하나의 별개 항목으로 관리되는 DNS 트리의 연속되어 있는 부분.

  12. What Are Resource Records and Record Types?

  13. Nwtraders North South West Sales Support Training What Is a DNS Zone?

  14. What Are DNS Zone Types? Read/Write Read-Only Copy of limited records

  15. How to Change a DNS Zone Type Your instructor will demonstrate how to change a DNS zone type

  16. What Are Forward and Reverse Lookup Zones? Namespace: training.nwtraders.msft. DNS Server Authorized for training DNS Client2 = ? 192.168.2.46 = ? DNS Client3 DNS Client1 DNS Client2

  17. How DNS Zone Transfers Work DNS zone transfer는 DNS servers에서 zone data를 synchronization(동기화) 및 authoritative(인증) 작업을 한다. SOA query for a zone 1 SOA query answered 2 IXFR or AXFR query for a zone 3 IXFR or AXFR query answered (zone transfer) 4 Secondary Server Primary and Master Server

  18. How DNS Notify Works DNS notify는 Primary의 Zone 데이터베이스가 수정되었음을 해당 Zone의 Authority를 갖는 Secondary 서버로 알려주어 Primary와 Secondary 네임서버의 동적 동기화를 가능케 한다. Resource record is updated 1 Destination Server Source Server SOA serial number is updated 2 DNS notify 3 Zone transfer 4 Secondary Server Primary and Master Server

  19. Lesson: Configuring a DNS Client • How Preferred and Alternate DNS Servers Work • How Suffixes Are Applied • How to Configure a DNS Client

  20. 3. Optionally, you can enter a whole list of alternate DNS servers 1. The preferred DNS server is the one that the client tries first 4. The preferred and alternate DNS servers specified on the Properties page automatically appear at the top of this list, and preferred and alternate servers are queried in the order they are listed 2. If the preferred server fails, the client tries the alternate DNS server How Preferred and Alternate DNS Servers Work

  21. Suffix Selection option Domain suffix search list Connection Specific Suffix How Suffixes Are Applied Name query = server1 server1.sales.south.nwtraders.com server1.south.nwtraders.com server1.nwtraders.com

  22. What Is Delegation of a DNS Zone? Namespace: training.nwtraders.msft DNS server The administrator, at the nwtraders.com level of the namespace, delegates authority for training.nwtraders.com and offloads administration of DNS for that part of the namespace training.nwtraders.msft Training.nwtraders.com now has its own administrator and DNS server to resolve queries in that part of the namespace/organization DNS server training.nwtraders.msft Delegation(위임)은도메인 이름에 대한 책임을 네트워크상의 각기 다른 DNS 서버에 분산시키는 프로세스..

  23. Lab : Domain Name System(DNS) LAB • Windows 2003 Server를 이용하여 DNS 서버를 구성하고 XP에서 Name Query를 실행한다. • DNS Server에 다음 Record를 구성한다. • A • PTR • MX • CNAME

  24. 학습목표 • 프로토콜의 필요성을 이해한다. • 프로토콜의 다양한 기능을 이해한다. • TCP/IP를 구성하는 주요 프로토콜의 구조와 목적을 이해한다. • 내용 • 프로토콜의 개념 • 프로토콜의 기능 • 프로토콜의 종류

  25. 프로토콜의 개념 • 프로토콜(protocol)의 개념 • 본래 의미는 외교에서 의례 또는 의정서 • 1965년 톰 마릴이 컴퓨터와 컴퓨터 사이에 메시지를 전달하는 과정을 프로토콜라 부름 • 컴퓨터가 메시지를 전달하고, 메시지가 제대로 도착했는지 확인하며, 메시지가 제대로 도착하지 않으면 메시지를 재전송하는 일련의 방법을 가리키는 ‘기술적 은어’라는 뜻 • 프로토콜의 세 가지 요소 • 구문(syntax) : 데이터의 형식이나 신호로, 부호화 방법 등을 정의 • 의미(semantics) : 오류 제어, 동기 제어, 흐름 제어 같은 각종 제어 절차에 관한 제어 정보 정의 • 순서(timing) : 송/수신자 간 혹은 양단(end-to-end)의 통신 시스템과 망 사이의 통신 속도나 순서 등을 정의

  26. 프로토콜의 기능 • 주소 설정(Addressing) • 각 전송 계층에 맞는 송신자와 수신자의 주소 지정 • 순서 제어(Sequence Control) • 데이터 단위가 전송될 때 보내지는 순서 명시 • 데이터 대열의 단편화 및 재조합(Fragmentation & Reassembly) • 전송 효율이 높은 작은 단위로 단편화 및 응용 프로그램에서 사용하기 위해 재조합 • 캡슐화(Encapsulation) • 데이터에 제어 정보를 덧붙임

  27. 프로토콜의 기능 • 연결 제어(Connection Control) • 연결 설정, 데이터 전송, 연결 해제에 대한 통제 수행 • 흐름 제어(Flow Control) • 송신측 개체로부터 오는 데이터의 양이나 속도 조절 • 오류 제어(Error Control) • 데이터를 교환할 때 SDU(Service Data Unit)나 PCI(Protocol Control Information)에 대한 오류 검사 • 동기화(Synchronization) • 두 개체 간에 데이터가 전송될 때 각 개체는 특정 타이머 값이나 윈도우 크기 등을 통해 서로의 상태를 일치시킴 • 다중화(Multiplexing) • 여러 시스템이 동시에 통신할 수 있는 기법 • 전송 서비스 • 우선순위 결정, 서비스 등급과 보안 요구 등을 제어

  28. 프로토콜의 종류 • OSI 7계층

  29. 프로토콜의 종류 • OSI 7계층 구조와 프로토콜

  30. 데이터 링크 계층 프로토콜 • 하드웨어에 대한 주소인 MAC(Media Access Control) 주소를 기반으로 하드웨어 간 통신을 위한 프로토콜 제공 • 이더넷 프로토콜 • 흔히 랜이라고 부르는 네트워크 구간 또는 네트워크 하드웨어 사이에서 MAC 주소를 기반으로 통신을 위한 프로토콜 • 이더넷 패킷의 최소 길이는 64KBytes, 최대 길이는 1,518KBytes

  31. 데이터 링크 계층 프로토콜 • 이더넷 패킷의 내용(표 2-1)

  32. 네트워크 계층 프로토콜 • 논리적인 주소인 IP 주소를 이용해 통신을 하기 위한 프로토콜 제공 • ARP(Address Resolution Protocol) • 통신 대상 시스템에 도달하기 위한 다음 네트워크 인터페이스의 MAC 주소를 알아낼 때 사용 • 선택된 매체에 브로드캐스트(broadcast)를 통해 특정 IP 주소를 사용하는 호스트가 응답을 하도록 요구하는 방식 사용 • 목적지 호스트가 응답하면 송신 호스트는 목적지 호스트와 연결을 맺고 데이터를 전송하기 시작 • ARP 패킷 구조(그림 2-6)

  33. 네트워크 계층 프로토콜 • ARP 패킷 내용(표 2-2)

  34. 네트워크 계층 프로토콜 • RARP(Reverse Address Resolution Protocol) • Opcode에도 정의되어 있었으나, 데이터 링크 계층의 주소인 MAC 주소를 가진 네트워크 계층의 주소, 즉 IP 확인 • 디스크가 없는 호스트가 자신의 IP 주소를 서버로부터 얻어내려면 RARP라는 TCP/IP 인터넷 프로토콜 사용 • IP(Internet Protocol) • 대표적인 네트워크 계층의 프로토콜로, 하위 계층의 서비스를 이용하여 주로 두 노드 간의 데이터 전송 경로 확립 • IP 패킷 구조(그림 2-7)

  35. 프로토콜의 종류 • IP 패킷 내용(표 2-3)

  36. 네트워크 계층 프로토콜 • IP 패킷 내용(표 2-3)

  37. 네트워크 계층 프로토콜 • IP 주소 체계 • IP는 32자리 2진수로 8자리마다 점을 찍어 구분하고, 개수가 제한되어 있기 때문에 체계적으로 사용할 수 있도록 별도의 규칙을 둠 • IP 주소는 A, B, C, D, E 클래스로 구분(그림 2-8) • A, B, C 클래스는 맨 앞부분에 시작하는 2진수 숫자에 따라 구분 • A 클래스의 네트워크가 가장 크고, C 클래스의 네트워크가 가장 작음 • 각 클래스마다 다음과 같이 사설 네트워크 대역을 지정해놓음(표 2-5)

  38. 네트워크 계층 프로토콜 • 네트워크 클래스의 구분과(표 2-4) 클래스별 네트워크 범위(표 2-5)

  39. 네트워크 계층 프로토콜 • ICMP(Internet Control Message Protocol) • 호스트 서버와 인터넷 게이트웨이 사이에서 메시지를 제어하고 오류를 알려줌 • ICMP를 사용하는 대표 툴은 ping • IP는 비연결형 프로토콜로, 패킷이 확실히 전송된다는 보장이 없기 때문에 라우터나 노드(호스트) 등에서 오류가 생겨 목적지까지 도달하지 못할 수 있으므로 송신측의 상태를 알려줘야 하는데, 이때 필요한 것이 ICMP • 송신측의 상황과 목적지 노드의 상황을 진단하는 프로토콜 • IP 계층 위에서 동작하지만 TCP, UDP의 전송 계층 프로토콜과는 별개 • ICMP 패킷 구조(그림 2-9)

  40. 네트워크 계층 프로토콜 • ICMP 패킷 내용(표 2-6)

  41. 네트워크 계층 프로토콜 • ICMP는 크게 오류 통지를 위한 오류 메시지와 진단용 문답 메시지 두 종류로 구분 • ICMP Echo Request 메시지 • 송신측의 전송 패킷이 목적지 노드나 라우터에 도착했는지를 확인하는 데 사용 • 송신측 노드는 목적지 노드에 대해 ‘ICMP Echo Request 메시지’를 송신하고, 목적지 노드로부터 ‘ICMP Echo Reply 메시지’가 회신되면 패킷이 무사히 전송된 것으로 인식 • ICMP Destination Unreachable 메시지 • 라우터가 특정 노드의 패킷을 목적지에 보내지 못할 경우, 송신 노드에 대해 ‘ICMP Destination Unreachable 메시지’를 보내고(목적지까지 전송되지 못한 이유를 나타내는 정보 포함) 목적지 노드의 IP 주소의 경로를 찾아내지 못한 라우터는 이를 다시 송신측 라우터로 이 메시지를 되돌려 보냄 • 송신측 노드는 이 메시지를 해석하여 패킷이 목적지에 도착하지 못했음을 알 수 있음

  42. 네트워크 계층 프로토콜 • ICMP Redirect 메시지 • 라우터가 송신측 노드에 적합하지 않은 경로로 설정되어 있을 경우 그 노드에 대한 최적화된 경로를 다시 지정해주는 ICMP Redirect 메시지를 보냄 • ICMP Time Exceeded 메시지 • 패킷이 네트워크 사이에서 무한정 돌아가지 않게 하기 위해 각 라우터가 패킷을 처리할 때마다 TTL(Time To Live)을 감소시키다가 그 값이 ‘0’이 되면 패킷을 폐기하기 위해 송신측 라우터에 ‘ICMP Time Exceeded 메시지’를 되돌려 보냄으로써 패킷이 폐기된 사실을 알림 • [그림 2-11]의 경우에 노드 A에서 TTL 값을 3으로 전송한다면, 라우터 A에서 2가 되고, B에서 1, C에서 0이 되어 패킷이 폐기되고 노드 B에는 전달되지 못할 것이다.

  43. 네트워크 계층 프로토콜 • ICMP Source Quench 메시지 • 저속 광역 회선 등을 사용할 경우에는 IP 라우터의 WAN 쪽에서 집중이 발생할 수 있는데, 이 집중을 완화하기 위해, 송신측 큐 값이 ‘0’으로 남아 송신 불능 상태가 되면 ‘ICMP Source Quench 메시지’를 송신측 노드에 보내고, 송신측은 이 메시지의 정보를 해석하여 회선의 어딘가가 혼잡하다는 것을 인식하고 송신 패킷 양 제어

  44. 네트워크 계층 프로토콜 • IGMP(Internet Group Management Prococol) • 멀티캐스트에 관여하는 프로토콜로, 멀티캐스트 그룹 관리 • 유니캐스트 • 한 호스트에서 다른 호스트로 전송(송/수신단이 1:1로 대비) • 일반적인 IP 데이터의 전송은 모두 유니캐스트 사용 • 브로드캐스트 • 호스트에서 IP 네트워크에 있는 전체 호스트로 데이터 전송 • TCP/IP에서 브로드캐스트용 주소는 IP 호스트 대역 주소가 모두‘1(2 진수로 표현할 시에)’인 경우 • 일반적인 브로드캐스트는 255.255.255.255 • 특정 네트워크에 브로드캐스팅하는 것을 다이렉트 브로드캐스팅(예>C 클래스의 211.32.34.0 네트워크 대해 브로드캐스팅하고자 하는 경우 목적지 주소는 211.32.34.255로 지정) • 멀티캐스트 • 유니캐스트와 브로드캐스트의 중간 형태 • 송신하는 하나의 호스트에 특정한 호스트를 묶어서 전송 • 지정한 주소로 패킷을 한 번만 전달하면 멀티캐스트 그룹에 속한 모든 호스트에 전달되기 때문에 효율이 높음 • IP 멀티캐스트 주소는 Class D 주소 대역(244.0.0.1~239.255.255.255)으로 규정

  45. 전송 계층 프로토콜 • TCP(Transmission Control Protocol) • 전송 계층에서 동작하는 연결 지향형(connectionoriented) 프로토콜 • 데이터의 흐름을 관리하고, 데이터가 정확한지 검증하며 통신 • 쓰리웨이 핸드셰이킹(three-way handshaking)을 통해 연결 설정 • 특징 • 높은 신뢰성 • 가상 회선 연결 방식 • 연결의 설정과 해제 • 데이터 체크섬 • 시간 초과와 재전송 • 데이터 흐름 제어

  46. 전송 계층 프로토콜 • TCP 헤더(그림 2-13)

  47. 전송 계층 프로토콜 • TCP 패킷 내용(표 2-7)

  48. 전송 계층 프로토콜 • TCP 패킷 내용(표 2-7)

  49. 전송 계층 프로토콜 • TCP에서 연결 생성 과정(그림 2-14) • ➊ 단계 : 두 시스템이 통신을 하기 전에 클라이언트는 포트가 Closed 상태며, 서버는 해당 포트로 항상 서비스를 제공할 수 있도록 Listen 상태다. • ➋ 단계 : 처음 클라이언트가 통신을 하고자 하면, 임의의 포트 번호가 클라이언트 프로그램에 할당되고, 클라이언트는 SYN Sent 상태가 된다. 서버에 연결을 하고 싶다는 일종의 의사 표시다. • ➌ 단계 : 서버는 클라이언트의 연결 요청을 받고, SYN Received 상태가 된다. 그리고 클라이언트에 연결을 해도 좋다는 의미로SYN+ACK 패킷을 보낸다. • ➍ 단계 : 마지막으로 클라이언트는 연결 요청에 대한 서버의 응답을 확인했다는 표시로 ACK 패킷을 서버에 보낸다.

  50. 전송 계층 프로토콜 • TCP에서 연결 해제 과정(그림 2-15) • ➊ 단계 : 두 시스템이 통신을 하는 중에는 클라이언트와 서버 모두 Established 상태다. • ➋ 단계 : 통신을 끊고자 하는 클라이언트가 서버에 FIN 패킷을 보낸다. 이때, 클라이언트는 Close Wait 상태가 된다. • ➌ 단계 : 서버는 클라이언트의 연결 종료 요청을 확인하고, 클라이언트에 응답으로 ACK 패킷을 보낸 뒤, 서버도 클라이언트의 연결을 종료하겠다는 의미로 FIN 패킷을 보낸다. 그리고 Close Wait 상태가 된다. • ➍ 단계 : 마지막으로 클라이언트는 연결 종료 요청에 대한 서버의 응답을 확인했다는 의미로 ACK 패킷을 서버에 보낸다.

More Related