Presentation is loading. Please wait.

Presentation is loading. Please wait.

5장. OSI 프로토콜 내용 데이타링크 계층(Datalink Layer) 네트워크 계층(Network Layer)

Similar presentations


Presentation on theme: "5장. OSI 프로토콜 내용 데이타링크 계층(Datalink Layer) 네트워크 계층(Network Layer)"— Presentation transcript:

1 5장. OSI 프로토콜 내용 데이타링크 계층(Datalink Layer) 네트워크 계층(Network Layer)
트랜스포트 계층 (Transport Layer) 세션 계층 (Session Layer) 표현 계층 (Presentation Layer) 응용 계층 (Application Layer)

2 데이타링크 계층(Datalink Layer)
주요 기능 Error Control, Flow Control Stop-and-wait Protocol Go-back-N Protocol Selective Repeat Protocol

3 Stop-and-Wait Protocol
수신측에서 프레임을 받을 때마다 송신측으로 ACK를 전송 한번에 한 개의 프레임만을 전송 프레임 I(정보), ACK(긍정응답) 동작 방식([그림 5.3] 참조)

4 Stop-and-Wait의 단점 송신측의 프레임이 분실되어진 경우, 수신측에서는 ACK를 보내지 않고 송신측에서는 계속해서 ACK를 대기 수신측의 ACK가 분실되어진 경우, 앞에서와 같은 상황이 발생 ACK가 훼손되어진 경우 중복된 프레임 전송 비효율적

5 고-백-엔(Go-back-N) 수신측에서 패킷의 오류가 검출된 경우 NACK 신호를 보내게 되고 오류가 복구될 때까지 그 이후의 패킷은 수신하지 않는다. 송신측은 NACK를 수신하면 오류가 있는 패킷과 그 다음의 모든 패킷을 재전송 수신측이 전송된 패킷을 저장하거나 재전송된 패킷을 재배열시킬 필요가 없다. 재전송하는 패킷의 비율이 더 높게 되므로 망의 대역폭에 있어서는 손실 Go-back-N 사용 프로토콜: delta-t, XTP [그림 5.4]

6 Selective Repeat NACK를 수신한 패킷만 재전송하므로 go-back-N방식보다 재전송하는 패킷의 비율이 적어서 효율은 높다. 수신측은 재전송된 패킷을 재배열--오버헤드를 유발 사용 프로토콜 VMTP NETBLT XTP: Go-back-N과 Select Repeat 함께 사용 [그림 5.6]

7 비트 지향 프로토콜: HDLC (High-level DataLink Control)
특징 다양한 환경에서 동작 다양한 동작 모드 여러가지 이름 SDLC: IBM ADCCP: ANSI

8 HDLC 프로토콜의 동작 환경

9 HDLC 프로토콜의 동작 모드 정규 응답 모드(NRM) 불균형 구성( [그림 5.8]의 (a),(b) )
주국과 부국: 일대일 또는 일대다 부국의 데이타 전송: 주국의 허락 비동기 응답 모드(ARM) 불균형 구성 일반적으로 일대일로 연결된 전이중 링크 부국의 데이타 전송: 주국과 무관 비동기 균형 모드(ABM) 균형 구성( [그림 5.8]의 (c) ) 일대일로 연결된 전이중 링크 X.25 프로토콜에서 사용

10 HDLC 프레임 형식

11 HDLC 동작절차 연결 설정 및 해제

12 데이터 전송 동작 초기화가 성공적으로 완료되어 논리적인 연결이 확립되면 양측은 I-프레임에 사용자 데이터를 보내기 시작
I-프레임내의 N(S)과 N(R)필드는 흐름제어와 오류제어를 위해 사용 N(S) : 프레임에 순서적으로 번호를 부여 N(R): I-프레임을 받게 되면 자신의 I-프레임으로 잘 받았음을 송신측에 확인해 주게 되는데 이때 N(R)필드는 그 다음 받게될 프레임의 번호가 세팅 순서번호의 기능 흐름제어(3 or 7bit) Pipelining 오류제어 동작예 : [그림 5.11]

13 네트워크 계층(Network Layer)
주요 기능 Routing Congestion Control

14 Routing algorithms - Distance Vector - Link State
Distance Vector Routing Alg. 각 라우터는 주기적으로 그 이웃 각각과 명확한 경로 정보를 교환하는데, ARPANET에서 처음 사용 각 라우터는 부속망의 다른 라우터에 대한 엔트리를 갖는 라우팅 테이블을 유지 각 엔트리는 목적지를 위해 사용할 출력회선과 그 행선지까지의 측정시간이나 거리 RIP is a form of Distance Vector Alg. RIP는 원래 Arpanet에서 사용 현재도 Internet에서 사용 Novell has adapted it as Novell RIP.

15 Distance Vector Routing 동작
매 T msec마다 각 라우터는 각 라우터까지의 측정된 지연시간 리스트를 각 이웃(neighbor)에 보낸다. 또한 라우터(J)는 각 이웃으로부터 비슷한 리스트를 받는다. 이들 테이블 중 하나가 이웃 X로 부터 방금 도착한 것이라 생각하자. 여기서 Xi 는 라우터 i에 도착하는데 걸리는 시간으로 X의 측정치 이다. 라우터(J)가 X까지 측정된 지연시간이 msec라고 한다면 X를 경유하여 라우터 i에 도착하는 지연시간이 Xi+m msec 임을 안다. 각 이웃에 대해 이와 같은 산출을 함으로 라우터는 그중에서 최상의 평가치를 알아내고 그 라우팅 정보와 링크를 사용한다. 예: [그림 5.13]

16 Link state routing It is increasingly popular within autonomous systems Link state protocols are contained in ISO’s OSPF (Open Shortest Path First) algorithm for connectionless network layer services in the NFSNET backbone IS-IS protocol in Novell’s NLSP Makes use of Dijkstra’s algorithm. Five steps.

17 Link State Routing algorithm
1. 각 라우터의 주변(neighbor) 라우터를 인지하고 그들의 네트워크 주소를 숙지 HELLO packet send, 주변의 라우터는 응답 2. 주변 라우터의 각각에 대한 지연시간 또는 비용을 측정 ECHO packet send, 다른 라우터는 즉시 응답 3. Link state를 주변 라우터에게 알려주기 위한 패킷을 생성 [그림 5.14] 4. 이 패킷을 모든 라우터에게 분배 flooding algorithm 사용 [그림 5.15] 5. 모든 라우터로의 최단 경로(shortest path)를 계산

18 Examining Dijkstra’s algorithm – animation
Single Source Shortest Path Alg.(Dijkstra’s alg.)의 애니매이션 URL

19 Congestion Control Preallocation of buffers Packet Discarding
Isarithmic Congestion Control Choke Packet

20 트랜스포트 계층(Transport Layer) 컴퓨터 네트워크(안순신,김은기 저) 참조
주 기능 종단간 데이타 전송 링크 계층과 유사한 기능 인터페이스

21 서비스의 질(Quality Of Services, QOS)
영향을 미치는 요소 연결 설정시의 지연 시간 전송 속도 전송 지연 에러율 보호 우선 순위

22 트랜스포트 계층 서비스 프리미티브

23 트랜스포트 계층 서비스의 사용 예

24 트랜스포트 계층 프로토콜 트랜스포트 계층의 동작에 영향을 미치는 요소:하위 계층의 서비스 품질
하위 망의 특성에 따른 적절한 기능이 필요(예: 에러제어) 트랜스포트 계층 프로토콜을 다양하게 구성 망의 특성에 따라서 사용자가 필요한 프로토콜을 선택

25 클래스에 따른 트랜스포트 프로토콜

26 연결 설정형 TPDU 구조

27 세션 계층(Session Layer) 컴퓨터 네트워크(안순신,김은기 저) 참조
기능 사용자에게 구조화 된 대화 기능 제공 연결 설정 및 해제 기능 데이타 송신권에 대한 제어 기능 데이타 전송 도중 동기점 표시 및 동기점으로의 복귀 기능 데이타 전송 단위의 시작, 끝, 중단, 재시작, 버림 기능 동기점 대동기점(Major Synchronization Point) 소동기점(Minor Synchronization Point)

28 액티비티(Activity) 데이타 전송의 단위 토큰(Token) 데이타 토큰 해제 토큰 소동기 토큰 대동기/액티비티 토큰

29 세션 계층의 서비스

30 세션 계층의 액티비티와 동기점

31 기능 단위(Functional Unit)
세션 계층 서비스의 그룹화 연결 설정시 사용자가 필요한 기능 단위 선택 종류 커널(Kernel) 기능 단위 반이중(Half-duplex) 기능 단위 전이중(Full-duplex) 기능 단위 신속 데이타 전송(Expedited data transfer) 기능 단위 타입드 데이타 전송(Typed data transfer) 기능 단위 능력 데이타 교환(Capability data exchange) 기능 단위 소동기(Minor Sync. point) 기능 단위 대동기(Major Sync. point) 기능 단위 재동기(Resync.) 기능 단위 액티비티 관리(Activity management) 기능 단위 예외 보고(Exception reporting) 기능 단위

32 세션 계층 PDU(SPDU) 구조

33 표현 계층(Presentation Layer) 컴퓨터 네트워크(안순신,김은기 저) 참조
주요 기능 DTE들이 갖는 데이타 표현의 차이점 극복 기능 ASN.1(Abstract Syntax Notation 1. 추상 구문 표현 1.) 인코딩 규칙(Encoding Rule) 데이타 압축 기능 보안 기능

34 추상 구문 표현(ASN.1) 데이타 표현 방식이 다른 컴퓨터들간의 통신

35 ASN.1의 사용 예 응용에서 사용하는 데이타 타입 ASN.1 표기

36 ASN.1의 사용 예 (계속) 전송 구문

37 Data Compression 데이터 압축:음성, 비디오, 팩시밀리 전송등과 같은 경우에 중요
예를 들어 NTSC 비디오 신호전송을 해야할 때 압축을 하지 않는다면 약 100Mbps 전송속도가 요구 하지만 데이터 압축으로 필요한 전송속도를 상당히 줄일 수 있다. [그림 5.25]

38 허프만(Huffman) 코드 허프만 코드는 가장 널리 쓰이는 압축 방법
문자가 나타나는 빈도수에 따라 그 크기를 다르게 하는 것: 빈도수 의존 코드(frequency dependent code) 모음과 'L', 'R', 'S', 'N', 'T' 등과 같이 자주 나타나는 문자들은 더 작은 비트를 할당 예제: 각각의 확률이 0.5, 0.3, 0.15, 0.05인 4개의 값 x1, ..., x4가 있다고 가정 만일 x1, ..., x4값 각각을 나타내기 위해 코드 값 00, 01, 10 11을 사용한다면 X값을 전송하기 위해 2비트가 필요 그러나 만일 x1을 나타내기 위해 0, x2를 나타내기 위해 10, x3을 나타내기 위해 110, x4를 나타내기 위해 111을 사용한다면, 평균 0.5 x x x x 3 = 1.7 비트가 필요 접두코드(prefix code)

39 허프만 알고리즘 단 하나의 노드만을 가지고 있는 이진 트리와 각 문자를 매핑
각 트리에 문자들의 빈도수를 할당: 트리의 가중치(weight) 두개의 가장 작은 가중치를 가지고 있는 트리를 찾아 하나의 트리로 합치고 새로운 루트 노드를 만들어 낸다.(이 새 트리의 가중치는 합쳐진 두 트리의 가중치의 합) 마지막으로 하나의 트리가 남을 때까지 이 과정을 반복 이 과정이 끝났을 때 원래 노드들의 각각은 마지막 이진 트리의 말단 노드(leaf)가 된다. 이진 트리에서 루트로부터 말단 노드에 이르는 유일한 길(path)이 있게 되고 이 길이 허프만 코드가 된다. 그것은 각 왼쪽 자식 포인터에 0을 할당하고 오른쪽 자식 포인터에 1을 할당해서 결정 [그림 5.26]

40 Run Length 인코딩 허프만 코드는 알려져 있는 문자의 빈도수를 알아야 함
허프만 코드는 알려져 있는 문자의 빈도수를 알아야 함 팩스는 종이의 밝은 부분과 어두운 부분에 해당하는 비트를 전송 -->직접적으로 문자를 전송하지 않음 Run Length Encoding 기법은 단순하지만 확실한 접근을 시도---> 0 또는 1이 계속해서 나타나는 비트 문자열을 분석해서 모든 비트를 보내는 대신에 다만 0과 1이 몇 번 나타나는 횟수를 전송 팩시밀리 신호를 부호화하고 압축하는데 사용되는 간단하면서도 효율적인 데이터 압축 알고리즘

41 팩시밀리 전송을 위해 페이지를 줄단위로 주사하고 각 줄을 따라 일정 간격의 점들에 의해 반사되는 빛의 밝기를 측정
흰점을 0으로 나타내고 검은점을 1로 나타낸다고 가정하자. 만일 팩시밀리가 1인치당 200줄을 스캔하고, 각 줄마다 1인치당 200개의 점들의 밝기를 측정한다면 8.5인치×11인치 크기의 페이지를 200x200x8.5x11=3.74x10**6개의 비트로 표현 이 비트들을 9600bps 모뎀으로 전송한다면 6.5분이 걸림

42 Run Length Encoding 예 팩시밀리는 긴 0들의 열을 전송하는 대신에 두 1사이의 연속적인 0의 개수를 보낸다. 예를 들어 0a가 a개의 연속적인 0을 나타낸다고 표기하면, 1 0a 1 0b 1 0c 1 0d와 같은 스트링(string)은 A B C D와 같이 부호화된다. 여기서 A는 a의 이진수 표현이고, B는 b의, C는 c의, D는 d의 이진수 표현이다. 따라서 만일 a = 600(3인치 길이의 흰점에 해당)이면 A= 이 되고 따라서 600개의 0을 전송하는 대신에 단지 10비트만 전송하면 된다. 예: 교재 154~155 페이지 참조

43 상대적 인코딩(Relative Encoding)
비디오 전송에서 이미지들은 팩스의 어둡고 환한 이미지 전송과 텍스트 파일 전송에 비해 매우 복잡 전에 소개된 방법는 이미지 압축에 도움이 되지 않음 하나의 비디오 이미지는 거의 반복을 가지고 있지 않지만 여러 이미지들에 대해서는 많은 반복이 있음 상대적 인코딩은 각각의 프레임을 개별적인 단위로서 다루고 압축하려고 시도하지 않고 각 프레임이 전의 것보다 얼마나 다른지를 고려 정보를 압축하고 보내는 것은 프레임들간의 차이가 아주 작을 때 효과적이 된다.

44 상대적 인코딩의 원리 처음 프레임은 보내지고 수신기의 버퍼에 이것이 저장
송신기는 두 번째 프레임을 처음 것과 비교하고 그 차이를 인코드 그리고 그것을 프레임 포맷으로 보내게 된다 수신기는 그 프레임을 얻고 그 프레임이 가지고 있는 차이를 적용해서 송신기가 가졌던 두 번째 프레임을 만들어 냄 두 번째 프레임을 버퍼에 저장하고 계속해서 새로운 프레임에 대해서 위의 과정을 반복

45 Lempel-Ziv 인코딩 최근에 데이터를 압축하는 또하나의 방법 흔하게 되풀이되어지는 문자열을 찾아서 단지 한번만 저장
한번 저장된 동일한 단어나 문장은 원래의 것을 가리키는 포인터와 길이를 나타내는 값으로 대치 UNIX 압축 명령(compress 명령어)와 MS-DOS의 ARC 유틸리티에서 이 알고리즘이 사용 이 알고리즘을 사용하면 긴 파일을 거의 1/2길이로 압축

46 Lempel-Ziv 인코딩의 예 "the other one is the oldest”을 Lempel-Ziv 알고리즘으로 압축
the o[1,3]r[4,2]is[3,1][1,5]ld[3,1][16,1][1,1] [1,3]에서 1은 문장의 첫 번째 문자를 의미하며 3은 길이가 3임을 의미한다. 반복되는 문자열의 길이가 길수록 이 알고리즘의 효율은 증가 Lempel-Ziv 알고리즘의 실제구현은 위에서 설명한 원래의 알고리즘과 약간 다르다. 즉 실제로는 구현이 쉽도록 수정된 알고리즘을 사용하게 되는데 대신에 압축율이 조금 떨어진다.

47 Encryption(암호화) 일반적으로 컴퓨터 시스템에서 사용되는 정보 암호화는 특정한 키(key)값을 이용하여 평문(plain text)으로 된 정보를 암호문(cipher text)으로 바꾸는 작업

48 1. 고전적인 암호방식 고전적인 암호 방식 중 하나는 시져(Julius Caesar) 황제가 만든 것으로서 각 문자를 알파벳 순서상 세 자리 뒤의 문자로 대체하는 방법에 기초 예: 영어 문자 알파벳을 사용하여 이 방법에 의해서 대문자로 변환하면 평문 'Caesar'는 암호문 'FDHVDU'가 된다. 이 방법은 암호문을 세 자리 대신 k 자리만큼 문자를 이동시키는 것으로 일반화 이 방법은 k를 키로 한 순환이동 방법: 대체암호(substitution cipher) 치환암호(transposition cipher): 대체암호 방식과 함께 고전적인 암호 방식의 한 부류 평문의 심볼들을 재배치하는 방법이다.(순서를 재배열)

49 관용 암호 방식(conventional cryptosystem)
관용 암호 방식은 가장 널리 알려지고 또 일반적으로 사용되고 있는 암호 방식 컴퓨터 시스템과 통신망 등의 정보 암호화에 많이 이용 암호화 키와 복호화 키가 동일한 대칭 알고리즘을 사용 통신망에서 사용될 경우 일반적으로 세션키(session key) 또는 비밀키(secret key)로 불리우는 이 대칭키를 암호화 이전에 서로 분배(distribution)해야하는 부담

50 키분배는 비용 증대와 시간 지연이라는 단점을 가진다.
그러나 암호화 작업과 복호화 작업에서 계산량이 적고 빠르다는 장점으로 인하여 현재 가장 많이 사용 사용 예 미국 IBM에서 개발한 DES: 56비트의 키를 사용 IDEA(International Data Encryption Standard) 128비트의 비교적 큰 키를 사용 PGP(Pretty Good Privacy)에서 사용 일본 NTT에서 개발한 FEAL(fast data encryption algorithm) 등 특히 DES는 가장 일반적으로 사용되는 암호 방식으로서 UNIX의 패스워드 처리 및 자료 저장에 응용 [정의 5-1] 관용 암호 방식의 조건: 교재 159 페이지

51 공개키 암호 방식(public key cryptosystem)
관용 암호 방식의 가장 큰 문제점이었던 키분배 문제를 해결한 암호 방식 암호화 키와 복호화 키가 서로 다른 비대칭 알고리즘을 사용하고 암호화 키는 안전한 경로를 사용할 필요없이 공개해도 무방하다는 특징을 갖는다.

52 통신망에서 사용하기에는 관용 암호화 방식보다 더 적합하다고 판단되어짐
키분배에 따르는 부담이 크게 줄어 듬 통신망에서 사용하기에는 관용 암호화 방식보다 더 적합하다고 판단되어짐 암호화 및 복호화 작업에 필요한 계산량이 너무 크다는 치명적인 단점 효율적인 고속 하드웨어의 지원이 없이는 현실적으로 적용하기 어렵다. 대표적인 알고리즘은 최초의 공개키 방식으로 알려져 있는 RSA(Rivest, Shamir, Adleman) 알고리즘 [정의 5-2] 공개키 암호 방식의 조건: 교재 페이지 161

53 공개키 분배 방식(public key distribution cryptosystem)
공개키 분배 방식은 관용 암호 방식의 키분배 부담을 해결한 대칭 알고리즘 방식이다. 이 방식의 기본적인 아이디어는 관용 암호 방식의 암호화 및 복호화 작업의 계산량이 적다는 장점과 공개키 암호 방식의 키를 공개할 수 있다는 장점을 결합하는 것이다.

54 디지털 서명(digital signature)
디지털 서명은 일반적인 문서 서명의 개념을 컴퓨터에 도입한 것으로서, 하나의 전자적인 메세지가 유일한 것이며 또한 그 문서의 전송자가 누구라는 것을 추적하거나 증명할 수 있도록 하는 방법을 말한다. 디지털 서명은 메세지 송신자의 인증이 본래 손으로 쓰여진 서명과 같은 역할을 하는 것으로 생각한다. 디지털 서명은 전산화된 업무 및 회계 처리, 그리고 인터넷을 통한 전자 우편이나 정보의 전달에 주로 이용 보안 시스템의 중요성이 높아질수록 활용도가 매우 높아질 것으로 기대되는 기술 [정의 5-4] 디지털 서명의 조건

55 응용 계층(Application Layer) 컴퓨터 네트워크(안순신,김은기 저) 참조
ASE(Application Service Element) 응용 서비스를 제공하는 최소의 단위 여러개의 부 계층으로 구성 CASE(Common ASE) 모든 응용에서 공통적으로 사용될 가능성이 있는 ASE들 SASE(Specific ASE) 각 응용에서 고유하게 필요로 하는 ASE들

56 응용 계층의 구조

57 ACSE(Association Control Service Element)
기능: 응용 엔티티간 접속의 설정 및 해제 서비스 A-Associate A-Release A-Abort A-P-Abort

58 FTAM(File Transfer, Access, and Management)
기능 화일의 전송, 접근, 관리 등 화일 처리에 필요한 조작 FTAM 모델 가상 화일(Virtual File) 가상 화일 스토어(Virtual File Store)

59 FTAM (계속) 서비스

60 가상 터미널(Virtual Terminal)
네트워크 상에서 표준화 된 터미널 터미널 분류 베이직 클래스(Basic Class) 형식 클래스(Form Class) 이미지 클래스(Image Class) 그래픽 클래스(Graphic Class) 혼합 모드 클래스(Mixed Mode Class)

61 VT 프로토콜 서비스


Download ppt "5장. OSI 프로토콜 내용 데이타링크 계층(Datalink Layer) 네트워크 계층(Network Layer)"

Similar presentations


Ads by Google