osi 모델 프리젠테이션 레이어. OSI 네트워크 모델. 네트워크 모델의 수준에 대한 설명

프로토콜이 상호 작용하는 두 엔터티(이 경우 네트워크에서 작동하는 두 컴퓨터)가 채택한 계약이라고 해서 이것이 반드시 표준이라는 의미는 아닙니다. 그러나 실제로는 네트워크를 구현할 때 일반적으로 다음을 사용합니다. 표준 프로토콜. 이는 브랜드, 국가 또는 국제 표준.

80년대 초반에 ISO, ITU-T 등 여러 국제 표준화 조직이 네트워크 개발에 중요한 역할을 하는 모델을 개발했습니다. 이 모델을 ISO/OSI 모델이라고 합니다.

개방형 시스템 상호 운용성 모델 (개방형 시스템 상호 연결, OSI)는 시스템 간의 상호 작용의 다양한 수준을 정의합니다. 패킷 교환 네트워크, 표준 이름을 제공하고 각 레이어가 수행해야 하는 기능을 지정합니다.

OSI 모델은 70년대 주로 글로벌 컴퓨터 네트워크를 구축하면서 얻은 광범위한 경험을 바탕으로 개발되었습니다. 이 모델에 대한 전체 설명은 1000페이지가 넘는 텍스트를 차지합니다.

OSI 모델(그림 11.6)에서 통신 수단은 응용, 대표, 세션, 전송, 네트워크, 채널 및 물리적. 각 계층은 네트워크 장치 상호 작용의 특정 측면을 처리합니다.


쌀. 11.6.

OSI 모델은 운영 체제에 의해 구현된 시스템 통신만을 설명합니다. 시스템 유틸리티그리고 하드웨어. 모델에는 최종 사용자 애플리케이션 상호 작용을 위한 수단이 포함되어 있지 않습니다. 애플리케이션은 시스템 도구에 액세스하여 자체 통신 프로토콜을 구현합니다. 따라서 애플리케이션과 애플리케이션 간의 상호작용 수준을 구별할 필요가 있습니다. 애플리케이션 계층.

또한 애플리케이션이 OSI 모델의 일부 상위 계층 기능을 대신할 수 있다는 점도 염두에 두어야 합니다. 예를 들어 일부 DBMS에는 도구가 내장되어 있습니다. 원격 액세스파일에. 이 경우 애플리케이션은 원격 리소스에 액세스할 때 시스템 파일 서비스를 사용하지 않습니다. OSI 모델의 상위 계층을 우회하고 해당 작업을 담당하는 시스템 시설에 직접 액세스합니다. 운송 OSI 모델의 하위 수준에 있는 네트워크를 통한 메시지입니다.

따라서 애플리케이션이 파일 서비스와 같은 애플리케이션 계층에 요청한다고 가정해 보겠습니다. 이 요청에 따라 애플리케이션 수준 소프트웨어는 표준 형식으로 메시지를 생성합니다. 일반적인 메시지는 헤더와 데이터 필드로 구성됩니다. 헤더에는 수행해야 할 작업을 알려주기 위해 네트워크를 통해 대상 시스템의 애플리케이션 계층으로 전달되어야 하는 서비스 정보가 포함되어 있습니다. 우리의 경우 헤더에는 파일 위치와 수행해야 하는 작업 유형에 대한 정보가 분명히 포함되어야 합니다. 메시지 데이터 필드는 비어 있거나 원격 장치에 써야 하는 데이터와 같은 일부 데이터를 포함할 수 있습니다. 하지만 이 정보를 목적지까지 전달하기 위해서는 아직 해결해야 할 과제가 많으며, 그 책임은 하위 계층에 있습니다.

메시지를 생성한 후 애플리케이션 계층스택 아래로 보냅니다 대표 수준. 규약 대표 수준애플리케이션 레벨 헤더에서 수신된 정보를 기반으로 필요한 작업을 수행하고 자체 서비스 정보를 메시지 헤더에 추가합니다. 대표 수준, 프로토콜에 대한 지침이 포함되어 있습니다. 대표 수준대상 기계. 결과 메시지가 전달됩니다. 세션 수준, 이는 헤더 등을 추가합니다. (일부 프로토콜은 헤더 형식으로 메시지의 시작 부분뿐만 아니라 소위 "트레일러" 형식으로 끝 부분에도 서비스 정보를 배치합니다.) 마지막으로 메시지가 맨 아래에 도달합니다. 신체적 수준 , 실제로 통신 회선을 통해 수신자 기계로 전송됩니다. 이 시점에서 메시지는 모든 수준의 헤더로 "무성해졌습니다"(

모델 개방형 시스템 상호 연결(OSI)모든 네트워크 엔터티의 뼈대, 기초 및 기반입니다. 이 모델은 네트워크 프로토콜을 정의하여 이를 7개의 논리적 계층으로 배포합니다. 어떤 프로세스에서든 네트워크 전송 제어는 계층에서 계층으로 이동하여 각 계층의 프로토콜을 순차적으로 연결한다는 점에 유의하는 것이 중요합니다.

비디오: 7분 만에 알아보는 OSI 모델

하위 계층은 전기 신호와 같은 물리적 전송 매개변수를 담당합니다. 예 - 예, 전선의 신호는 전류 표현을 사용하여 전송됩니다. :) 전류는 1과 0(1과 0)의 시퀀스로 표현된 다음 데이터가 디코딩되어 네트워크를 통해 라우팅됩니다. 더 높은 수준에서는 데이터 표시와 관련된 쿼리를 다룹니다. 상대적으로 말하면, 상위 계층은 사용자 관점에서 네트워크 데이터를 담당합니다.

OSI 모델은 원래 다음과 같이 만들어졌습니다. 표준 접근 방식, 네트워크 애플리케이션의 네트워크 상호 작용을 설명하는 아키텍처 또는 패턴입니다. 좀 더 자세히 살펴볼까요?


#01: 신체레벨

첫 번째 수준에서 OSI 모델물리적 신호(전류, 빛, 라디오)가 소스에서 수신자로 전송됩니다. 이 수준에서는 케이블, 커넥터의 접점, 1과 0의 코딩, 변조 등을 사용하여 작업합니다.

첫 번째 수준에 존재하는 기술 중에서 가장 기본적인 표준인 이더넷을 강조할 수 있습니다. 이제 모든 집에 있습니다.

뿐만 아니라 전류. 무선 주파수, 빛 또는 적외선도 현대 네트워크의 모든 곳에서 사용됩니다.

첫 번째 수준에 속하는 네트워크 장치는 허브와 리피터입니다. 즉, 논리를 깊이 파고들지 않고(디코딩하지 않고) 물리적 신호로 간단히 작동할 수 있는 "어리석은" 하드웨어입니다.

#02: 데이터 링크 수준

우리가 첫 번째 레벨인 물리적인 신호를 받았다고 상상해 보세요. 이것은 다양한 진폭, 파동 또는 무선 주파수의 전압 세트입니다. 수신되면 두 번째 수준에서 전송 오류를 확인하고 수정합니다. 두 번째 수준에서는 "프레임"이라는 개념을 사용하거나 "프레임"이라고도 합니다. 여기에 첫 번째 식별자인 MAC 주소가 나타납니다. 이는 48비트로 구성되며 다음과 같습니다: 00:16:52:00:1f:03.

링크 레이어는 복잡합니다. 따라서 일반적으로 논리 채널 제어(LLC, Logical Link Control)와 미디어 액세스 제어(MAC, Media Access Control)의 두 가지 하위 수준으로 나뉩니다.

스위치 및 브리지와 같은 장치는 이 수준에 있습니다. 그런데! 이더넷 표준도 여기에 있습니다. OSI 모델의 첫 번째 및 두 번째(1 및 2) 레벨에 편안하게 위치해 있습니다.

#03: 네트워크 레이어

올라가자! 네트워크 계층에서는 "라우팅"이라는 용어와 그에 따른 IP 주소를 도입합니다. 그런데 IP 주소를 MAC 주소로 변환하거나 그 반대로 변환하는 데 사용됩니다. ARP 프로토콜.

이 수준에서 트래픽 라우팅이 발생합니다. 해당 사이트로 이동하고 싶다면 웹사이트, 그런 다음 IP 주소 형식으로 응답을 보내고 수신하여 이를 패킷에 대체합니다. 예 - 예, 앞서 말했듯이 두 번째 수준에서 프레임/프레임이라는 용어를 사용한다면 여기서는 패키지를 사용합니다.

장치 중 라우터 폐하가 여기에 살고 있습니다 :)

데이터가 상위 계층에서 하위 계층으로 전송되는 과정을 호출합니다. 캡슐화데이터, 반대로 위쪽으로 첫 번째부터 물리적인 것부터 일곱 번째까지 이 프로세스를 호출합니다. 캡슐화 해제데이터
#04: 전송 계층

이름에서 알 수 있듯이 전송 계층은 네트워크를 통한 데이터 전송을 제공합니다. 여기에는 TCP와 UDP라는 두 가지 주요 록 스타가 있습니다. 차이점은 다양한 교통 범주에 대해 서로 다른 전송 수단이 사용된다는 것입니다. 원칙은 이렇습니다.

  • 트래픽은 손실에 민감합니다.- 문제 없습니다. TCP(전송 제어 프로토콜)입니다! 데이터 전송에 대한 제어를 제공합니다.
  • 우리는 조금 잃을 것입니다 - 큰 문제는 아닙니다- 사실, 지금 이 글을 읽고 있는 지금, 몇 개의 패키지가 분실되었을 수도 있습니다. 그러나 이것은 사용자로서 느껴지지 않습니다. UDP(사용자 데이터그램 프로토콜)가 좋습니다. 전화라면 어떨까요? 실시간 음성은 단순히 "삐걱거리는 소리"를 내기 시작하므로 패킷 손실은 매우 중요합니다.
#05: 세션 레이어

네트워크 엔지니어에게 세션 계층에 대한 설명을 요청하세요. 그가 이것을하는 것은 100 % 어려울 것입니다. 사실 일상 업무에서 네트워크 엔지니어는 물리적, 채널, 네트워크 및 전송이라는 처음 4개 계층과 상호 작용합니다. 나머지 또는 소위 "상위" 수준은 소프트웨어 개발자의 작업과 더 관련이 있습니다. :) 하지만 시도해 보겠습니다!

세션 계층은 연결, 즉 간단히 말하면 세션을 관리하는 역할을 담당합니다. 그는 그들을 찢습니다. “에 대한 밈을 기억하세요 단 한 번의 휴식도 없었습니다"? 우리는 기억한다. 그래서 이것은 다섯 번째 레벨을 시도한 것입니다 :)

#06 프리젠테이션 레이어

여섯 번째 수준에서는 인코딩이나 압축과 같은 메시지 형식의 변환이 발생합니다. 예를 들어 JPEG 및 GIF가 여기에 있습니다. 또한 이 레벨은 스트림을 네 번째(전송 계층)로 전송하는 역할도 담당합니다.

#07 적용 수준

7층, 빙산의 끝 부분에 애플리케이션 레이어가 있습니다! 여기에는 최종 사용자인 우리가 인터넷 서핑을 할 수 있게 해주는 네트워크 서비스가 있습니다. 보세요, 우리의 지식 베이스를 열 때 어떤 프로토콜을 사용하시나요? 맞습니다, HTTPS입니다. 이 사람은 7층에서 왔습니다. 간단한 HTTP, FTP 및 SMTP도 여기에 있습니다.

이 기사가 도움이 되었나요?

내게 이유를 말해줘?

기사가 도움이 되지 못해 죄송합니다. (어렵지 않다면 이유를 알려주세요. 자세한 답변을 주시면 매우 감사하겠습니다. 더 나아질 수 있도록 도와주셔서 감사합니다!

다른 지식 분야와 마찬가지로 네트워크 과학에도 학습에 대한 두 가지 근본적인 접근 방식이 있습니다. 즉 일반에서 특정으로 이동하거나 그 반대로 이동하는 것입니다. 글쎄, 사람들이 인생에서 이러한 접근 방식을 순수한 형태로 사용하는 것은 아니지만 여전히 초기 단계에서 각 학생은 위에서 언급한 방향 중 하나를 스스로 선택합니다. 고등 교육(적어도 (포스트)소비에트 모델)의 경우 첫 번째 방법이 더 일반적이고 자기 교육의 경우 두 번째 방법이 가장 자주 사용됩니다. 사람이 네트워크에서 작업하면서 때때로 소규모 단일 사용자 관리 작업을 해결하고 갑자기 그는 어떻게, 사실, 이 모든 쓰레기가 어떻게 작동하는지 알고 싶었습니다.

그러나 이 글의 목적은 교육 방법론에 관한 철학적 논의가 아니다. 저는 초보 네트워커들에게 주목할만한 점을 소개하고 싶습니다. 일반적인가장 중요한 것은 난로처럼 가장 세련된 개인 상점에서 춤을 출 수 있다는 것입니다. 7계층 OSI 모델을 이해하고 이미 알고 있는 기술에서 해당 계층을 "인식"하는 방법을 배우면 선택한 네트워킹 산업의 어느 방향으로든 쉽게 나아갈 수 있습니다. OSI 모델은 네트워크에 대한 새로운 지식이 매달릴 프레임워크입니다.

이 모델은 네트워크에 관한 거의 모든 현대 문헌뿐만 아니라 특정 프로토콜 및 기술의 많은 사양에서도 어떤 방식으로든 언급됩니다. 바퀴를 재발명할 필요성을 느끼지 못한 채 저는 N. Olifer, V. Olifer(센터)의 작업에서 발췌한 내용을 출판하기로 결정했습니다. 정보 기술) "통신 프로토콜의 역할과 기업 네트워크의 주요 장비 유형의 기능적 목적"이라는 제목으로 이 주제에 대한 가장 훌륭하고 포괄적인 출판물이라고 생각합니다.

편집장

모델

프로토콜이 상호 작용하는 두 엔터티(이 경우 네트워크에서 작동하는 두 컴퓨터) 간의 합의라고 해서 이것이 반드시 표준이라는 의미는 아닙니다. 그러나 실제로는 네트워크를 구현할 때 표준 프로토콜을 사용하는 경향이 있습니다. 이는 독점, 국내 또는 국제 표준일 수 있습니다.

국제표준화기구(ISO)는 시스템 간 상호작용의 다양한 수준을 명확하게 정의하고, 시스템에 표준 이름을 부여하고, 각 수준에서 수행해야 하는 작업을 지정하는 모델을 개발했습니다. 이 모델을 OSI(개방형 시스템 상호 연결) ​​모델 또는 ISO/OSI 모델이라고 합니다.

OSI 모델에서 통신은 7개 계층으로 구분됩니다(그림 1.1). 각 레벨은 상호 작용의 특정 측면을 다룹니다. 따라서 상호작용 문제는 7개의 특정 문제로 분해되며, 각 문제는 다른 문제와 독립적으로 해결될 수 있습니다. 각 레이어는 위, 아래 레이어와의 인터페이스를 유지합니다.

쌀. 1.1. ISO/OSI 개방형 시스템 상호 연결 모델

OSI 모델은 최종 사용자 애플리케이션이 아닌 시스템 통신만 설명합니다. 애플리케이션은 시스템 기능에 액세스하여 자체 통신 프로토콜을 구현합니다. 애플리케이션은 OSI 모델의 일부 상위 계층 기능을 인계받을 수 있으며, 이 경우 필요한 경우 인터네트워킹을 통해 OSI 모델의 나머지 하위 계층 기능을 수행하는 시스템 도구에 직접 액세스할 수 있다는 점을 명심해야 합니다. OSI 모델.

최종 사용자 응용 프로그램은 시스템 상호 작용 도구를 사용하여 다른 시스템에서 실행 중인 다른 응용 프로그램과의 대화를 구성할 수 있을 뿐만 아니라 단순히 특정 네트워크 서비스의 서비스(예: 원격 파일 액세스, 메일 수신, 인쇄 등)를 수신할 수도 있습니다. 공유 프린터.

따라서 애플리케이션이 파일 서비스와 같은 애플리케이션 계층에 요청한다고 가정해 보겠습니다. 이 요청을 기반으로 애플리케이션 수준 소프트웨어는 서비스 정보(헤더) 및 전송된 데이터를 포함하는 표준 형식 메시지를 생성합니다. 그런 다음 이 메시지는 대표 수준으로 전달됩니다. 프리젠테이션 계층은 메시지에 헤더를 추가하고 결과를 세션 계층으로 전달하며 세션 계층은 다시 헤더를 추가하는 등의 작업을 수행합니다. 일부 프로토콜 구현에서는 메시지에 헤더뿐만 아니라 트레일러도 포함되어 있음을 제공합니다. 마지막으로 메시지는 가장 낮은 물리적 계층에 도달하여 실제로 통신 회선을 따라 전송됩니다.

메시지가 네트워크를 통해 다른 시스템에 도착하면 해당 메시지는 한 수준에서 다른 수준으로 순차적으로 위로 이동합니다. 각 레벨은 해당 레벨의 헤더를 분석, 처리, 삭제하고 해당 레벨에 해당하는 기능을 수행하며 상위 레벨로 메시지를 전달합니다.

"메시지"라는 용어 외에도 네트워크 전문가가 데이터 교환 단위를 지정하는 데 사용하는 다른 이름이 있습니다. 모든 수준의 프로토콜에 대한 ISO 표준에서는 "프로토콜 데이터 단위"(PDU)라는 용어를 사용합니다. 또한 프레임, 패킷, 데이터그램이라는 이름도 자주 사용됩니다.

ISO/OSI 모델 계층 기능

물리적 계층: 이 계층은 동축 케이블, 연선 케이블 또는 광섬유 케이블과 같은 물리적 채널을 통한 비트 전송을 처리합니다. 이 수준은 대역폭, 잡음 내성, 특성 임피던스 등과 같은 물리적 데이터 전송 매체의 특성과 관련이 있습니다. 동일한 수준에서 펄스 에지에 대한 요구 사항, 전송된 신호의 전압 또는 전류 레벨, 코딩 유형, 신호 전송 속도와 같은 전기 신호의 특성이 결정됩니다. 또한 커넥터 유형과 각 접점의 목적이 여기에 표준화되어 있습니다.

물리 계층 기능은 네트워크에 연결된 모든 장치에 구현됩니다. 컴퓨터 측에서 물리적 계층 기능은 네트워크 어댑터 또는 직렬 포트에 의해 수행됩니다.

물리 계층 프로토콜의 예로는 10Base-T 이더넷 기술 사양이 있습니다. 이는 특성 임피던스가 100Ω인 카테고리 3 비차폐 연선 쌍으로 사용되는 케이블, RJ-45 커넥터, 최대 길이 100미터의 물리적 세그먼트, 케이블의 데이터를 나타내는 맨체스터 코드, 환경 및 전기 신호의 기타 특성.

데이터 링크 계층: 물리 계층은 단순히 비트를 전송합니다. 이는 여러 쌍의 상호 작용하는 컴퓨터가 통신 회선을 교대로 사용(공유)하는 일부 네트워크에서 물리적 전송 매체가 점유될 수 있다는 점을 고려하지 않은 것입니다. 따라서 링크 계층의 임무 중 하나는 전송 매체의 가용성을 확인하는 것입니다. 링크 계층의 또 다른 임무는 오류 감지 및 수정 메커니즘을 구현하는 것입니다. 이를 위해 데이터 링크 계층에서 비트는 프레임이라는 세트로 그룹화됩니다. 링크 계층은 각 프레임의 시작과 끝 부분에 특별한 비트 시퀀스를 배치하여 각 프레임이 올바르게 전송되도록 보장하고 프레임의 모든 바이트를 특정 방식으로 합산하고 체크섬을 추가하여 체크섬을 계산합니다. 프레임에. 프레임이 도착하면 수신자는 수신된 데이터의 체크섬을 다시 계산하고 그 결과를 프레임의 체크섬과 비교합니다. 일치하면 프레임이 올바른 것으로 간주되어 승인됩니다. 체크섬이 일치하지 않으면 오류가 기록됩니다.

링크 계층 프로토콜에서 사용되는 로컬 네트워크, 컴퓨터 간의 특정 연결 구조와 이를 처리하는 방법이 규정되어 있습니다. 데이터 링크 계층은 로컬 네트워크의 두 노드 간에 프레임 전달을 제공하지만 이는 매우 특정한 연결 토폴로지, 즉 설계된 토폴로지를 가진 네트워크에서만 수행됩니다. LAN 링크 계층 프로토콜이 지원하는 일반적인 토폴로지에는 공유 버스, 링 및 스타가 포함됩니다. 링크 계층 프로토콜의 예로는 이더넷, 토큰 링, FDDI, 100VG-AnyLAN이 있습니다.

근거리 통신망에서 링크 계층 프로토콜은 컴퓨터, 브리지, 스위치 및 라우터에서 사용됩니다. 컴퓨터에서 링크 계층 기능은 네트워크 어댑터와 해당 드라이버의 공동 노력을 통해 구현됩니다.

정규 토폴로지가 거의 없는 글로벌 네트워크에서 데이터 링크 계층은 개별 통신 회선으로 연결된 두 인접 컴퓨터 간의 메시지 교환을 보장합니다. 지점간 프로토콜(종종 이러한 프로토콜이라고 함)의 예로는 널리 사용되는 PPP 및 LAP-B 프로토콜이 있습니다.

네트워크 수준 이 수준은 최종 노드 간에 정보를 전송하기 위한 서로 다른 원칙을 사용하여 여러 네트워크를 통합하는 통합 전송 시스템을 형성하는 데 사용됩니다. 로컬 네트워크를 예로 들어 네트워크 계층의 기능을 살펴보겠습니다. 로컬 네트워크 링크 계층 프로토콜은 적절한 네트워크의 모든 노드 간에만 데이터 전달을 보장합니다. 일반적인 토폴로지. 이는 여러 기업 네트워크를 단일 네트워크로 결합한 네트워크나 노드 간 중복 연결이 있는 신뢰성이 높은 네트워크 등 발전된 구조의 네트워크 구축을 허용하지 않는 매우 엄격한 제한 사항입니다. 한편으로는 표준 토폴로지에 대한 데이터 전송 절차의 단순성을 유지하고 다른 한편으로는 임의의 토폴로지를 사용할 수 있도록 추가 네트워크 계층이 사용됩니다. 이 수준에서는 "네트워크"라는 개념이 도입됩니다. 이 경우 네트워크는 표준적인 일반적인 토폴로지 중 하나에 따라 서로 연결되고 이 토폴로지에 대해 정의된 링크 계층 프로토콜 중 하나를 사용하여 데이터를 전송하는 컴퓨터의 집합으로 이해됩니다.

따라서 네트워크 내에서 데이터 전달은 데이터 링크 계층에 의해 규제되지만 네트워크 간의 데이터 전달은 네트워크 계층에서 처리됩니다.

네트워크 계층 메시지는 일반적으로 패키지. 네트워크 수준에서 패킷 전달을 구성할 때 이 개념이 사용됩니다. "네트워크 번호". 이 경우 수신자의 주소는 네트워크 번호와 이 네트워크에 있는 컴퓨터 번호로 구성됩니다.

네트워크는 라우터라는 특수 장치를 통해 서로 연결됩니다. 라우터인터네트워크 연결의 토폴로지에 대한 정보를 수집하고 이를 기반으로 네트워크 계층 패킷을 대상 네트워크로 전달하는 장치입니다. 한 네트워크에 있는 발신자로부터 다른 네트워크에 있는 수신자에게 메시지를 전송하려면 적절한 경로를 선택할 때마다 네트워크 간에 여러 번의 전송(홉)을 수행해야 합니다. 따라서 경로는 패킷이 통과하는 일련의 라우터입니다.

최선의 경로를 선택하는 문제를 이라고 한다. 라우팅그 솔루션은 네트워크 수준의 주요 작업입니다. 이 문제는 최단 경로가 항상 최선이 아니라는 사실로 인해 복잡해집니다. 종종 경로를 선택하는 기준은 해당 경로를 따라 데이터가 전송되는 시간이며, 이는 시간이 지남에 따라 변경될 수 있는 통신 채널의 용량과 트래픽 강도에 따라 달라집니다. 일부 라우팅 알고리즘은 로드 변화에 적응하려고 시도하는 반면 다른 알고리즘은 장기 평균을 기반으로 결정을 내립니다. 경로는 전송 신뢰성과 같은 다른 기준에 따라 선택될 수 있습니다.

네트워크 수준에서는 두 가지 유형의 프로토콜이 정의됩니다. 첫 번째 유형은 노드에서 라우터로, 라우터 간에 엔드 노드 데이터 패킷을 전송하기 위한 규칙의 정의를 나타냅니다. 이는 사람들이 네트워크 계층 프로토콜에 관해 이야기할 때 일반적으로 의미하는 프로토콜입니다. 네트워크 계층에는 다음과 같은 또 다른 유형의 프로토콜도 포함됩니다. 라우팅 정보 교환 프로토콜. 라우터는 이러한 프로토콜을 사용하여 인터네트워크 연결 토폴로지에 대한 정보를 수집합니다. 네트워크 계층 프로토콜은 운영 체제 소프트웨어 모듈은 물론 라우터 소프트웨어 및 하드웨어에 의해 구현됩니다.

네트워크 계층 프로토콜의 예로는 TCP/IP 스택 IP 인터네트워크 프로토콜과 Novell IPX 스택 인터네트워크 프로토콜이 있습니다.

전송 계층: 보낸 사람에서 받는 사람으로 가는 도중에 패킷이 손상되거나 손실될 수 있습니다. 일부 응용 프로그램에는 자체 오류 처리 기능이 있지만 안정적인 연결을 즉시 처리하는 것을 선호하는 응용 프로그램도 있습니다. 전송 계층의 임무는 애플리케이션이나 스택의 상위 계층(애플리케이션 및 세션)이 필요한 수준의 안정성으로 데이터를 전송하도록 보장하는 것입니다. OSI 모델은 전송 계층에서 제공하는 다섯 가지 서비스 클래스를 정의합니다. 이러한 유형의 서비스는 제공되는 서비스의 품질, 즉 긴급성, 중단된 통신을 복원하는 능력, 공통 전송 프로토콜을 통해 서로 다른 애플리케이션 프로토콜 간의 다중 연결을 다중화하는 수단의 가용성, 그리고 가장 중요하게는 감지 및 패킷의 왜곡, 손실, 중복 등의 전송 오류를 수정합니다.

전송 계층 서비스 클래스의 선택은 한편으로는 전송 계층보다 높은 수준의 애플리케이션 및 프로토콜에 의해 신뢰성 보장 문제가 해결되는 정도에 따라 결정되며, 다른 한편으로는 이 선택은 다음 사항에 따라 결정됩니다. 전체 데이터 전송 시스템이 온라인에서 얼마나 안정적인지. 따라서 예를 들어 통신 채널의 품질이 매우 높고 하위 수준 프로토콜에서 오류가 감지되지 않을 가능성이 적다면 수많은 검사에 부담을 주지 않는 경량 전송 계층 서비스 중 하나를 사용하는 것이 합리적입니다. , 핸드셰이킹 및 신뢰성을 높이기 위한 기타 기술입니다. 만약에 차량처음에는 매우 신뢰할 수 없는 경우 오류를 감지하고 제거하기 위한 최대 수단을 사용하여 작동하는 가장 발전된 전송 수준 서비스로 전환하는 것이 좋습니다. 먼저 논리적 연결을 설정하고 다음을 사용하여 메시지 전달을 모니터링합니다. 체크섬패킷의 순환 번호 지정, 배달 시간 초과 설정 등

일반적으로 전송 계층 이상에서 시작하는 모든 프로토콜이 구현됩니다. 소프트웨어네트워크의 최종 노드 - 네트워크 운영 체제의 구성 요소입니다. 전송 프로토콜의 예로는 TCP/IP 스택의 TCP 및 UDP 프로토콜과 Novell 스택의 SPX 프로토콜이 있습니다.

세션 계층: 세션 계층은 현재 활성 상태인 당사자를 기록하기 위한 대화 관리 기능을 제공하고 동기화 기능도 제공합니다. 후자를 사용하면 긴 전송에 체크포인트를 삽입할 수 있으므로 실패할 경우 처음부터 다시 시작하는 대신 마지막 체크포인트로 돌아갈 수 있습니다. 실제로 세션 계층을 사용하는 애플리케이션은 거의 없으며 구현되는 경우도 거의 없습니다.

프리젠테이션 계층: 이 계층은 애플리케이션 계층에서 전달된 정보가 다른 시스템의 애플리케이션 계층에서 이해될 것이라는 보장을 제공합니다. 필요한 경우 프리젠테이션 계층은 데이터 형식을 일반적인 프리젠테이션 형식으로 변환하고 수신 시 그에 따라 역변환을 수행합니다. 이러한 방식으로 애플리케이션 계층은 예를 들어 데이터 표현의 구문 차이를 극복할 수 있습니다. 이 수준에서는 데이터의 암호화 및 암호 해독이 수행될 수 있으며, 덕분에 모든 애플리케이션 서비스에 대해 데이터 교환의 비밀이 동시에 보장됩니다. 프레젠테이션 계층에서 작동하는 프로토콜의 예로는 TCP/IP 스택의 애플리케이션 계층 프로토콜에 대한 보안 메시징을 제공하는 SSL(Secure Socket Layer) 프로토콜이 있습니다.

응용 프로그램 계층 응용 프로그램 계층은 실제로 네트워크 사용자가 파일, 프린터 또는 하이퍼텍스트 웹 페이지와 같은 공유 리소스에 액세스하고 프로토콜을 사용하여 공동 작업을 구성하는 데 사용하는 다양한 프로토콜 집합입니다. 이메일. 애플리케이션 계층이 작동하는 데이터 단위는 일반적으로 메시지 .

매우 다양한 애플리케이션 계층 프로토콜이 있습니다. 파일 서비스의 가장 일반적인 구현 중 최소한 몇 가지를 예로 들어 보겠습니다. Novell NetWare 운영 체제의 NCP, 마이크로소프트 윈도우 NT, NFS, FTP 및 TFTP는 TCP/IP 스택에 포함됩니다.

OSI 모델은 매우 중요하기는 하지만 많은 통신 모델 중 하나일 뿐입니다. 이러한 모델과 관련 프로토콜 스택은 계층 수, 기능, 메시지 형식, 상위 계층에서 제공되는 서비스 및 기타 매개변수가 다를 수 있습니다.

널리 사용되는 통신 프로토콜 스택의 특성

따라서 네트워크에서 컴퓨터의 상호 작용은 메시지 및 형식을 교환하는 특정 규칙, 즉 특정 프로토콜에 따라 발생합니다. 계층적으로 구성된 프로토콜 세트, 문제 해결네트워크 노드의 상호 작용을 통신 프로토콜 스택이라고 합니다.

네트워크에서 널리 사용되는 프로토콜 스택이 많이 있습니다. 이는 국제 및 국내 표준인 스택과 특정 회사의 장비 보급으로 인해 널리 보급된 독점 스택입니다. 널리 사용되는 프로토콜 스택의 예로는 Novell의 IPX/SPX 스택, TCP/IP 스택이 있습니다. 인터넷 네트워크그리고 많은 운영 기반 네트워크에서 유닉스 시스템, 국제표준화기구(International Organization for Standardization)의 OSI 스택, Digital Equipment Corporation의 DECnet 스택 및 기타 일부.

네트워크에서 특정 통신 프로토콜 스택의 사용은 네트워크의 모습과 그 특성을 크게 결정합니다. 소규모 네트워크에서는 스택을 하나만 사용할 수 있습니다. 대규모 기업 네트워크에 연결되어 있는 경우 다양한 네트워크, 일반적으로 여러 스택이 병렬로 사용됩니다.

통신 장비는 상위 계층 프로토콜보다 더 표준화된 하위 계층 프로토콜을 구현하며 이는 성공을 위한 전제 조건입니다. 협동다양한 제조업체의 장비. 특정 통신 장치가 지원하는 프로토콜 목록은 이 장치의 가장 중요한 특징 중 하나입니다.

컴퓨터는 네트워크 운영 체제의 해당 소프트웨어 요소 형태로 통신 프로토콜을 구현합니다. 예를 들어 링크 수준 프로토콜은 일반적으로 네트워크 어댑터 드라이버 형태로 구현되고 상위 수준 프로토콜은 서버 및 클라이언트 구성 요소 형태로 구현됩니다. 네트워크 서비스의.

특정 운영 체제 환경에서 잘 작동하는 능력은 통신 장비의 중요한 특성입니다. NetWare 또는 UNIX 네트워크에서 작동하도록 특별히 설계된 네트워크 어댑터나 허브에 대한 광고를 종종 읽을 수 있습니다. 이는 하드웨어 개발자가 해당 네트워크 운영 체제에서 사용되는 프로토콜에 대해 또는 이러한 프로토콜이 다른 운영 체제에서 사용되는 경우 특정 구현 버전에 대해 특성을 최적화했음을 의미합니다. 다양한 운영 체제에서 프로토콜 구현의 특성으로 인해 통신 장비의 특징 중 하나는 특정 운영 체제 환경에서 작동할 수 있는 능력에 대한 인증입니다.

낮은 수준(물리적 및 데이터 링크)에서는 거의 모든 스택이 동일한 프로토콜을 사용합니다. 이더넷, 토큰 링, FDDI 등 잘 표준화된 프로토콜은 모든 네트워크에서 동일한 장비를 사용할 수 있도록 해줍니다.

기존 표준 스택의 네트워크 및 상위 계층 프로토콜은 매우 가변적이며 일반적으로 ISO 모델에서 권장하는 계층화를 따르지 않습니다. 특히 이러한 스택에서는 세션 및 프레젠테이션 계층 기능이 애플리케이션 계층과 결합되는 경우가 가장 많습니다. 이러한 불일치는 ISO 모델이 이미 존재하고 실제로 사용되는 스택의 일반화 결과로 나타났으며 그 반대의 경우는 아니기 때문입니다.

OSI 스택

OSI 프로토콜 스택과 OSI 모델을 구별해야 합니다. OSI 모델은 개방형 시스템의 상호 작용 절차를 개념적으로 정의하고 작업을 7개 계층으로 분해하며 각 계층의 목적을 표준화하고 계층에 대한 표준 이름을 도입하는 반면, OSI 스택은 일관된 프로토콜을 구성하는 매우 구체적인 프로토콜 사양 집합입니다. 프로토콜 스택. 이 프로토콜 스택은 미국 정부의 GOSIP 프로그램에서 지원됩니다. 모두 컴퓨터 네트워크 1990년 이후 정부 설치는 OSI 스택을 직접 지원하거나 향후 해당 스택으로 마이그레이션할 수 있는 수단을 제공해야 합니다. 그러나 OSI 스택은 미국보다 유럽에서 더 널리 사용됩니다. 유럽에는 자체 프로토콜을 사용하는 레거시 네트워크가 설치되어 있지 않기 때문입니다. 유럽에도 매우 다양한 국가가 있기 때문에 공통 스택에 대한 필요성이 큽니다.

이는 제조업체에 독립적인 국제 표준입니다. 이를 통해 기업, 파트너, 공급업체 간의 협업이 가능해집니다. 이러한 상호 작용은 주소 지정, 이름 지정 및 데이터 보안 문제로 인해 복잡해집니다. 이러한 모든 문제는 OSI 스택에서 부분적으로 해결됩니다. OSI 프로토콜에는 많은 컴퓨팅 성능이 필요합니다. 중앙 프로세서, 네트워크보다는 강력한 시스템에 더 적합합니다. 개인용 컴퓨터. 대부분의 조직은 OSI 스택으로의 전환을 계획하고 있습니다. 이 방향으로 작업하는 사람들 중에는 미 해군부와 NFSNET 네트워크가 있습니다. OSI를 지원하는 최대 제조업체 중 하나는 AT&T입니다. Stargroup 네트워크는 전적으로 OSI 스택을 기반으로 합니다.

분명한 이유로 OSI 스택은 다른 표준 스택과 달리 OSI 상호 연결 모델을 완전히 준수하며 개방형 시스템 상호 연결 모델의 7개 계층 모두에 대한 사양을 포함합니다(그림 1.3).


쌀. 1.3. OSI 스택

~에 OSI 스택은 이더넷, 토큰 링, FDDI 프로토콜은 물론 LLC, X.25 및 ISDN 프로토콜도 지원합니다. 이러한 프로토콜은 매뉴얼의 다른 섹션에서 자세히 논의됩니다.

서비스 네트워크, 전송 및 세션레벨 OSI 스택에서도 사용할 수 있지만 그다지 일반적이지는 않습니다. 네트워크 계층은 비연결 프로토콜과 연결 기반 프로토콜을 모두 구현합니다. OSI 모델에 정의된 기능과 일치하는 OSI 스택 전송 프로토콜은 연결 지향 네트워크 서비스와 비연결 네트워크 서비스 간의 차이점을 숨겨 사용자가 기본 네트워크 계층에 관계없이 원하는 서비스 품질을 받을 수 있도록 합니다. 이를 제공하기 위해 전송 계층에서는 사용자가 원하는 서비스 품질을 지정하도록 요구합니다. 가장 낮은 클래스 0부터 가장 높은 클래스 4까지 5가지 전송 서비스 클래스가 정의되었으며, 이는 오류 허용 수준과 오류 후 데이터 복구 요구 사항이 다릅니다.

서비스 응용 수준 파일 전송, 터미널 에뮬레이션, 디렉토리 서비스 및 메일이 포함됩니다. 이들 중 가장 유망한 것은 디렉터리 서비스(X.500 표준), 전자 메일(X.400), 가상 터미널 프로토콜(VT), 파일 전송, 액세스 및 관리(FTAM) 프로토콜, 전달 및 작업 관리 프로토콜(JTM)입니다. . 최근 ISO는 최고 수준의 서비스에 노력을 집중했습니다.

X.400

전자 메시지 전달 시스템을 설명하는 CCITT(International Consultative Committee on Telegraphy and Telephony)의 권장 사항 모음입니다. 오늘날 X.400 권장 사항은 가장 널리 사용되는 메시징 프로토콜입니다. X.400 권장 사항은 메시징 시스템의 모델, 이 시스템의 모든 구성 요소 간 상호 작용을 위한 프로토콜, 다양한 메시지 유형 및 전송된 각 메시지 유형에 대해 보낸 사람이 갖는 기능을 설명합니다.

X.400 권장 사항은 사용자에게 제공되어야 하는 다음과 같은 최소 필수 서비스 집합을 정의합니다. 즉, 액세스 제어, 고유 시스템 메시지 식별자 유지 관리, 이유가 있는 메시지 전달 또는 배달 실패 알림, 메시지 콘텐츠 유형 표시, 메시지 콘텐츠 변환 표시, 전송 및 배달 타임스탬프, 배달 범주 선택(긴급, 비긴급, 일반), 멀티캐스트 배달, 지연 배달(특정 시점까지), 텔렉스 및 팩스 서비스와 같은 호환되지 않는 메일 시스템과 인터페이스하도록 콘텐츠 변환, 여부 쿼리 특정 메시지가 전달되었습니다. 메일링 목록은 비대칭 공개 키 암호화 시스템을 기반으로 무단 액세스로부터 메시지를 보호하는 수단으로 중첩된 구조를 가질 수 있습니다.

추천의 목적 X.500글로벌 스탠다드의 발전이다 안내 데스크. 메시지를 전달하는 과정에서는 수신자의 주소를 알아야 하는데, 이는 대규모 네트워크에서 문제가 되므로 발신자와 수신자의 주소를 알아낼 수 있도록 도와주는 헬프 데스크가 필요합니다. 일반적으로 X.500 서비스는 이름과 주소로 구성된 분산 데이터베이스입니다. 모든 사용자는 특정 속성 세트를 사용하여 이 데이터베이스에 로그인할 수 있습니다.

이름 및 주소 데이터베이스에는 다음 작업이 정의됩니다.

  • 읽기 - 알려진 이름으로 주소 얻기,
  • 요청 - 알려진 주소 속성을 기반으로 이름을 얻습니다.
  • 데이터베이스의 레코드 삭제 및 추가와 관련된 수정.

X.500 권장 사항을 구현하는 데 있어 주요 과제는 전 세계적인 참조 서비스를 목표로 하는 이 프로젝트의 규모에서 비롯됩니다. 따라서 X.500 권장 사항을 구현하는 소프트웨어는 매우 번거롭고 하드웨어 성능에 대한 요구가 높습니다.

규약 버몬트서로 다른 터미널 에뮬레이션 프로토콜 간의 비호환성 문제를 해결합니다. 현재 IBM PC와 호환되는 개인용 컴퓨터 사용자는 3개를 구입해야 합니다. 다양한 프로그램터미널 에뮬레이션용 다양한 방식그리고 다른 프로토콜을 사용합니다. 모든 호스트 컴퓨터에 ISO 터미널 에뮬레이션 프로토콜 소프트웨어가 있는 경우 사용자에게는 VT 프로토콜을 지원하는 프로그램 하나만 필요합니다. ISO는 표준에 널리 사용되는 터미널 에뮬레이션 기능을 축적했습니다.

파일 전송은 가장 일반적인 컴퓨터 서비스입니다. 모든 애플리케이션은 로컬 및 원격 파일에 대한 액세스가 필요합니다. 텍스트 편집기, 이메일, 데이터베이스 또는 원격 실행 프로그램. ISO는 프로토콜에서 이러한 서비스를 제공합니다. FTAM. X.400 표준과 함께 가장 널리 사용되는 OSI 스택 표준입니다. FTAM은 파일 콘텐츠 지역화 및 액세스를 위한 기능을 제공하며 파일 콘텐츠 삽입, 교체, 확장 및 지우기를 위한 일련의 지시문을 포함합니다. FTAM은 또한 파일 생성, 삭제, 읽기, 열기, 닫기 및 속성 선택을 포함하여 파일 전체를 조작하기 위한 기능을 제공합니다.

전달 및 작업 제어 프로토콜 JTM사용자가 호스트 컴퓨터에서 완료해야 하는 작업을 전달할 수 있습니다. 작업 제출을 가능하게 하는 작업 제어 언어는 호스트 컴퓨터에 어떤 프로그램과 파일에 대해 어떤 작업을 수행해야 하는지 알려줍니다. JTM 프로토콜은 전통적인 일괄 처리, 트랜잭션 처리, 원격 작업 입력 및 분산 데이터베이스 액세스를 지원합니다.

TCP/IP 스택

DoD 스택 및 인터넷 스택이라고도 하는 TCP/IP 스택은 가장 인기 있고 유망한 통신 프로토콜 스택 중 하나입니다. 현재 UNIX OS를 사용하는 네트워크에 주로 배포되는 경우 다음에서 구현됩니다. 최신 버전개인용 컴퓨터(Windows NT, NetWare)용 네트워크 운영 체제는 TCP/IP 스택 설치 수의 급속한 증가를 위한 좋은 전제 조건입니다.

스택은 이기종 컴퓨팅 환경을 위한 공통 프로토콜 세트로서 실험적인 ARPAnet 네트워크를 다른 위성 네트워크와 연결하기 위해 20여년 전 미국 국방부(DoD)의 주도로 개발되었습니다. ARPA 네트워크는 군사 분야의 개발자와 연구원을 지원했습니다. ARPA 네트워크에서 두 컴퓨터 간의 통신은 현재까지 TCP/IP 스택의 주요 프로토콜 중 하나이며 스택 이름에 나타나는 IP(인터넷 프로토콜)를 사용하여 수행되었습니다.

Berkeley University는 UNIX OS 버전에 스택 프로토콜을 구현하여 TCP/IP 스택 개발에 크게 기여했습니다. UNIX 운영 체제의 광범위한 채택은 또한 IP 및 기타 스택 프로토콜의 광범위한 채택으로 이어졌습니다. Worldwide는 동일한 스택에서 작동합니다. 정보 네트워크인터넷의 IETF(Internet Engineering Task Force) 부서는 RFC 사양 형식으로 게시된 스택 표준 개선에 크게 기여하고 있습니다.

TCP/IP 스택은 ISO/OSI 개방형 시스템 상호 연결 모델이 출현하기 전에 개발되었기 때문에 다중 레벨 구조를 가지고 있지만 TCP/IP 스택 레벨과 OSI 모델 레벨의 대응은 다소 조건적입니다. .

TCP/IP 프로토콜의 구조는 그림 1.4에 나와 있습니다. TCP/IP 프로토콜은 4개의 계층으로 구분됩니다.

쌀. 1.4. TCP/IP 스택

가장 낮은 것( 레벨 IV ) - 레벨 사이 네트워크 인터페이스- OSI 모델의 물리적 및 데이터 링크 계층에 해당합니다. TCP/IP 프로토콜의 이 수준은 규제되지 않지만 물리적 및 데이터 링크 계층의 모든 널리 사용되는 표준을 지원합니다. 로컬 채널의 경우 이더넷, 토큰 링, FDDI이고 글로벌 채널의 경우 아날로그 다이얼에서 작동하기 위한 자체 프로토콜입니다. 직렬 링크를 통해 지점 간 연결을 설정하는 업 및 임대 회선 SLIP/PPP 글로벌 네트워크, WAN 프로토콜 X.25 및 ISDN. 데이터 링크 계층 전송으로 ATM 기술의 사용을 정의하는 특수 사양도 개발되었습니다.

다음 레벨 ( 레벨 III )는 다양한 로컬 네트워크, X.25 영역 네트워크, 임시 회선 등을 사용하여 데이터그램 전송을 처리하는 인터네트워킹 계층입니다. 스택은 프로토콜을 사용합니다. IP이는 원래 로컬 및 글로벌 연결로 연결된 다수의 로컬 네트워크로 구성된 복합 네트워크에서 패킷을 전송하기 위한 프로토콜로 설계되었습니다. 따라서 IP 프로토콜은 복잡한 토폴로지를 가진 네트워크에서 잘 작동하며 하위 시스템의 존재를 합리적으로 사용하고 경제적으로 지출합니다. 처리량저속 통신 회선. IP 프로토콜은 데이터그램 프로토콜입니다.

인터네트워킹 수준에는 라우팅 정보 수집을 위한 프로토콜 등 라우팅 테이블의 편집 및 수정과 관련된 모든 프로토콜도 포함됩니다. 찢다.(라우팅 인터넷 프로토콜) 및 OSPF(최단 경로 우선 개방) 및 인터넷 제어 메시지 프로토콜 ICMP(인터넷 제어 메시지 프로토콜). 후자의 프로토콜은 라우터와 게이트웨이, 소스 시스템과 대상 시스템 사이에서 오류 정보를 교환하도록 설계되었습니다. 피드백. 특수한 ICMP 패킷을 사용하면 패킷 전달이 불가능하다는 것, 조각에서 패킷을 모으는 수명이나 기간이 초과되었다는 것, 매개 변수 값의 이상, 전달 경로 및 서비스 유형의 변경, 상태 등이 보고됩니다. 시스템 등

다음 레벨 ( 레벨 II)를 기본이라고 합니다. 전송 제어 프로토콜은 이 수준에서 작동합니다. TCP(전송 제어 프로토콜) 및 사용자 데이터그램 프로토콜 UDP(사용자 데이터그램 프로토콜). TCP 프로토콜은 원격 애플리케이션 프로세스 간에 안정적인 가상 연결을 제공합니다. UDP 프로토콜은 가상 연결을 설정하지 않고 데이터그램 방법을 사용하여 애플리케이션 패킷의 전송을 보장하므로 TCP보다 오버헤드가 적습니다.

최상위 수준( 레벨 I)을 적용이라고 합니다. 다양한 국가와 조직의 네트워크에서 수년 동안 사용되면서 TCP/IP 스택은 수많은 프로토콜과 애플리케이션 수준 서비스를 축적해 왔습니다. 여기에는 FTP 파일 복사 프로토콜, 텔넷 터미널 에뮬레이션 프로토콜, 메일과 같이 널리 사용되는 프로토콜이 포함됩니다. SMTP 프로토콜, 인터넷 이메일과 러시아 지사 RELCOM, WWW 등의 원격 정보에 액세스하기 위한 하이퍼텍스트 서비스에 사용됩니다. 이 과정의 주제와 가장 밀접하게 관련된 몇 가지 사항을 자세히 살펴보겠습니다.

규약 SNMP(Simple Network Management Protocol)은 네트워크 관리를 구성하는 데 사용됩니다. 여기서 관리 문제는 두 가지 문제로 나누어진다. 첫 번째 작업은 정보 전송과 관련이 있습니다. 제어 정보 전송 프로토콜은 서버와 관리자 호스트에서 실행되는 클라이언트 프로그램 간의 상호 작용 절차를 결정합니다. 클라이언트와 서버 간에 교환되는 메시지 형식은 물론 이름과 주소의 형식도 정의합니다. 두 번째 과제는 통제된 데이터와 관련이 있습니다. 표준은 게이트웨이에 저장되고 축적되어야 하는 데이터, 이 데이터의 이름 및 이러한 이름의 구문을 규제합니다. SNMP 표준은 사양을 정의합니다. 정보 기반네트워크 관리 데이터. MIB(Management Information Base)로 알려진 이 사양은 호스트나 게이트웨이가 저장해야 하는 데이터 요소와 허용되는 작업을 정의합니다.

파일 전송 프로토콜 FTP(파일 전송프로토콜)은 원격 파일 액세스를 구현합니다. 안정적인 전송을 보장하기 위해 FTP는 연결 지향 프로토콜인 TCP를 전송 수단으로 사용합니다. 파일 전송 프로토콜 외에도 FTP는 다른 서비스를 제공합니다. 이는 사용자에게 기회를 제공합니다 대화형 작업예를 들어, 원격 시스템을 사용하면 디렉토리의 내용을 인쇄할 수 있으며, FTP를 사용하면 사용자가 저장할 데이터의 유형과 형식을 지정할 수 있습니다. 마지막으로 FTP는 사용자를 인증합니다. 파일에 액세스하기 전에 프로토콜은 사용자에게 사용자 이름과 비밀번호를 제공하도록 요구합니다.

TCP/IP 스택에서 FTP는 가장 포괄적인 파일 서비스 세트를 제공하지만 프로그래밍하기도 가장 복잡합니다. FTP의 모든 기능이 필요하지 않은 응용 프로그램은 보다 비용 효율적인 또 다른 프로토콜인 단순 파일 전송 프로토콜을 사용할 수 있습니다. TFTP(간단한 파일 전송 프로토콜). 이 프로토콜은 파일 전송만 구현하며 사용되는 전송은 TCP보다 간단한 비연결 프로토콜인 UDP입니다.

규약 텔넷프로세스 간은 물론 프로세스와 터미널 간 바이트 스트림 전송을 제공합니다. 대부분 이 프로토콜은 원격 컴퓨터 터미널을 에뮬레이트하는 데 사용됩니다.

IPX/SPX 스택

이 스택은 80년대 초반 NetWare 네트워크 운영 체제용으로 개발된 원래 Novell 프로토콜 스택입니다. 스택에 이름을 부여하는 IPX(Internetwork Packet Exchange) 및 SPX(Sequenced Packet Exchange) 프로토콜은 IPX/SPX보다 훨씬 덜 일반적인 Xerox의 XNS 프로토콜을 직접 적용한 것입니다. 설치 측면에서는 IPX/SPX 프로토콜이 선두를 달리고 있으며 이는 NetWare OS 자체가 전 세계 설치 점유율 약 65%로 선두 위치를 차지하고 있기 때문입니다.

Novell 프로토콜 제품군과 ISO/OSI 모델과의 대응은 그림 1.5에 나와 있습니다.

쌀. 1.5. IPX/SPX 스택

~에 물리적 및 데이터 링크 수준 Novell 네트워크는 이러한 수준의 모든 인기 있는 프로토콜(이더넷, 토큰 링, FDDI 등)을 사용합니다.

~에 네트워크 수준 프로토콜은 Novell 스택에서 작동합니다. IPX, 라우팅 정보 교환 프로토콜 찢다.그리고 NLSP(TCP/IP 스택의 OSPF 프로토콜과 유사) IPX는 Novell 네트워크에서 패킷 주소 지정 및 라우팅을 처리하는 프로토콜입니다. IPX 라우팅 결정은 패킷 헤더의 주소 필드와 라우팅 정보 교환 프로토콜의 정보를 기반으로 합니다. 예를 들어, IPX는 RIP 또는 NLSP(NetWare Link State Protocol)에서 제공하는 정보를 사용하여 패킷을 대상 컴퓨터나 다음 라우터로 전달합니다. IPX 프로토콜은 메시지 교환의 데이터그램 방법만 지원하므로 컴퓨팅 리소스를 경제적으로 소비합니다. 따라서 IPX 프로토콜은 주소 설정, 경로 설정 및 데이터그램 전송의 세 가지 기능을 제공합니다.

Novell 스택에 있는 OSI 모델의 전송 계층은 연결 지향 메시지 전송을 수행하는 SPX 프로토콜에 해당합니다.

상단에 애플리케이션, 프레젠테이션 및 세션 수준 NCP 및 SAP 프로토콜이 작동합니다. 규약 NCP(NetWare Core Protocol)은 NetWare 서버와 워크스테이션 셸 간의 상호 작용을 위한 프로토콜입니다. 이 애플리케이션 계층 프로토콜은 OSI 모델의 상위 계층에서 클라이언트-서버 아키텍처를 구현합니다. 이 프로토콜의 기능을 사용하여 워크스테이션은 서버에 연결하고, 서버 디렉터리를 로컬 드라이브 문자에 매핑하고, 서버 파일 시스템을 탐색하고, 삭제된 파일, 속성 등을 변경하고 분할도 수행합니다. 네트워크 프린터워크스테이션 사이.

(서비스 광고 프로토콜) - 서비스 광고 프로토콜은 개념적으로 RIP 프로토콜과 유사합니다. RIP를 통해 라우터가 라우팅 정보를 교환할 수 있는 것처럼 SAP는 네트워크 장치가 사용 가능한 네트워크 서비스에 대한 정보를 교환할 수 있도록 합니다.

서버와 라우터는 SAP를 사용하여 서비스와 네트워크 주소를 광고합니다. SAP 프로토콜을 사용하면 네트워크 장치가 현재 네트워크에서 사용할 수 있는 서비스에 대한 정보를 지속적으로 업데이트할 수 있습니다. 시작 시 서버는 SAP를 사용하여 나머지 네트워크에 해당 서비스에 대해 알립니다. 서버가 종료되면 SAP를 사용하여 서비스가 중단되었음을 네트워크에 알립니다.

Novell 네트워크에서 NetWare 3.x 서버는 매분 SAP 브로드캐스트 패킷을 보냅니다. SAP 패킷은 네트워크를 크게 방해하므로 글로벌 통신에 액세스하는 라우터의 주요 작업 중 하나는 SAP 패킷 및 RIP 패킷의 트래픽을 필터링하는 것입니다.

IPX/SPX 스택의 기능은 NetWare OS의 기능, 즉 방향에 따라 결정됩니다. 이전 버전(최대 4.0) 적절한 리소스를 갖춘 개인용 컴퓨터로 구성된 소규모 로컬 네트워크에서 작업합니다. 따라서 Novell에는 최소한의 프로토콜이 필요한 프로토콜이 필요했습니다. 랜덤 액세스 메모리(MS-DOS를 실행하는 IBM 호환 컴퓨터에서는 640KB로 제한됨) 처리 능력이 낮은 프로세서에서 빠르게 실행됩니다. 결과적으로 최근까지 IPX/SPX 스택 프로토콜은 로컬 네트워크에서는 잘 작동했지만 대기업 네트워크에서는 잘 작동하지 않았습니다. 왜냐하면 이 스택의 여러 프로토콜에서 집중적으로 사용되는 브로드캐스트 패킷으로 느린 글로벌 링크에 과부하가 걸렸기 때문입니다(예: 클라이언트와 서버 간의 통신 설정)

이러한 상황과 IPX/SPX 스택이 Novell의 자산이고 이를 구현하려면 라이센스가 필요하다는 사실로 인해 오랫동안 NetWare 네트워크에만 배포가 제한되었습니다. 그러나 NetWare 4.0이 출시될 때까지 Novell은 기업 네트워크에서 작동하도록 적응시키기 위해 프로토콜을 크게 변경했으며 계속해서 변경하고 있습니다. 이제 IPX/SPX 스택은 NetWare뿐만 아니라 SCO UNIX, Sun Solaris, Microsoft Windows NT 등 널리 사용되는 여러 다른 네트워크 운영 체제에서도 구현됩니다.

NetBIOS/SMB 스택

Microsoft와 IBM은 개인용 컴퓨터용 네트워킹 도구를 함께 개발했기 때문에 NetBIOS/SMB 프로토콜 스택은 두 회사가 공동으로 개발한 것입니다. NetBIOS는 표준 IBM PC BIOS(기본 입출력 시스템) 기능의 네트워크 확장으로 1984년에 도입되었습니다. 네트워크 프로그램 IBM의 PC 네트워크는 애플리케이션 수준(그림 1.6)에서 SMB(서버 메시지 블록) 프로토콜을 사용하여 네트워크 서비스를 구현했습니다.

쌀. 1.6. NetBIOS/SMB 스택

규약 NetBIOS개방형 시스템 상호 작용 모델의 세 가지 수준에서 작동합니다. 네트워크, 전송 및 세션. NetBIOS는 IPX 및 SPX 프로토콜보다 더 높은 수준의 서비스를 제공할 수 있지만 라우팅 기능은 없습니다. 따라서 NetBIOS는 엄밀한 의미에서 네트워크 프로토콜이 아닙니다. NetBIOS에는 네트워크, 전송 및 세션 계층에 속할 수 있는 유용한 네트워킹 기능이 많이 포함되어 있지만 NetBIOS 프레임 교환 프로토콜은 네트워크와 같은 개념을 도입하지 않기 때문에 패킷을 라우팅하는 데 사용할 수 없습니다. 이는 NetBIOS 프로토콜의 사용을 서브넷되지 않은 로컬 네트워크로 제한합니다. NetBIOS는 데이터그램과 연결 기반 통신을 모두 지원합니다.

규약 중소기업 OSI 모델의 애플리케이션 및 대표 수준에 해당하는 는 워크스테이션과 서버의 상호 작용을 규제합니다. SMB 기능에는 다음 작업이 포함됩니다.

  • 세션 관리. 워크스테이션과 파일 서버의 네트워크 리소스 간의 논리 채널 생성 및 중단.
  • 파일 액세스. 워크스테이션은 디렉터리 생성 및 삭제, 파일 생성, 열기 및 닫기, 파일 읽기 및 쓰기, 파일 이름 바꾸기 및 삭제, 파일 검색, 파일 속성 가져오기 및 설정, 레코드 잠금 요청을 통해 파일 서버에 연결할 수 있습니다.
  • 인쇄 서비스. 워크스테이션은 서버에서 인쇄할 파일을 대기열에 추가하고 인쇄 대기열에 대한 정보를 얻을 수 있습니다.
  • 메시징 서비스. SMB는 다음 기능을 사용하여 간단한 메시징을 지원합니다. 간단한 메시지 보내기; 브로드캐스트 메시지를 보내세요. 메시지 블록의 시작을 보냅니다. 메시지 블록 텍스트를 보냅니다. 메시지 블록의 끝을 보냅니다. 사용자 이름 전달; 배송을 취소하세요. 기계 이름을 알아내세요.

NetBIOS에서 제공하는 API 기능을 사용하는 응용 프로그램이 많기 때문에 많은 네트워크 운영 체제에서는 이러한 기능을 전송 프로토콜에 대한 인터페이스로 구현합니다. NetWare에는 IPX 프로토콜을 기반으로 NetBIOS 기능을 에뮬레이트하는 프로그램이 있으며 Windows NT 및 TCP/IP 스택용 NetBIOS용 소프트웨어 에뮬레이터가 있습니다.

이 귀중한 지식이 왜 필요한가요? (사설)

한번은 동료가 나에게 까다로운 질문을 한 적이 있다. 글쎄, 그는 OSI 모델이 무엇인지 알고 있다고 말합니다... 그리고 그것이 왜 필요한지, 이 지식의 실질적인 이점은 무엇입니까? 인형 앞에서 과시하지 않는 한? 사실이 아닙니다. 이 지식의 이점은 많은 실제 문제를 해결하기 위한 체계적인 접근 방식입니다. 예를 들어:

  • 문제 해결 (
문제 해결)

사용자(단지 친구)가 관리자(경험이 풍부한 네트워크 사용자)로서 귀하에게 와서 여기에서는 "연결되지 않습니다"라고 말합니다. 그는 네트워크가 없고 그게 전부라고 말합니다. 당신은 그것을 알아 내기 시작합니다. 그래서 이웃을 관찰 한 경험을 바탕으로 "마음 속에 OSI 모델을 인식하지 못하는"사람의 행동은 특징적인 혼란스러운 행동이 특징이라는 것을 알았습니다. 그는 전선을 잡아 당기거나 갑자기 뭔가를 만지작 거리고 있습니다. 브라우저에서. 그리고 이것은 종종 방향없이 움직이는 그러한 "전문가"가 문제 영역을 제외한 모든 것을 잡아 당겨 자신과 다른 사람들의 시간을 많이 낭비한다는 사실로 이어집니다. 상호작용 수준의 존재를 인식하면 움직임이 더욱 일관될 것입니다. 출발점이 다를 수 있지만(제가 접한 각 책에서 권장 사항은 약간 달랐습니다) 문제 해결의 일반적인 논리적 전제는 다음과 같습니다. 레벨 X에서 상호 작용이 올바르게 수행되면 레벨 X-1에서 대부분 아마도 모든 것이 정상일 것입니다. 적어도 각각의 특정 순간시간. IP 네트워크 문제를 해결할 때 저는 개인적으로 DOD 스택의 두 번째 수준, 즉 세 번째 OSI 계층, 즉 인터넷 프로토콜에서 "파기"를 시작합니다. 첫째, "환자에 대한 피상적인 검사"(환자가 핑을 할 가능성이 그렇지 않은 경우보다 높음)를 수행하는 것이 가장 쉽기 때문에, 둘째, 다행스럽게도 핑이 울리면 테스트 케이블의 불쾌한 조작을 건너뛸 수 있습니다. 네트워크 카드 및 분해 등 즐거운 일입니다.) 특히 심각한 경우에는 여전히 레벨 1부터 가장 심각한 방법으로 시작해야 합니다.

  • 동료와의 상호 이해

이 점을 설명하기 위해 나는 여러분에게 삶의 예를 들려드리겠습니다. 어느 날 소규모 회사의 친구들이 나를 방문하여 네트워크가 제대로 작동하지 않는 이유를 파악하고 이 문제에 대한 몇 가지 권장 사항을 제공하기 위해 저를 초대했습니다. 나는 사무실에 온다. 그리고 거기에는 오래된 전통에 따라 "프로그래머"라고 불리는 관리자가 있다는 것이 밝혀졌습니다. (실제로 그는 주로 FoxPro를 다루고 있습니다.) - 페레스트로이카 이전의 오래된 IT 전문가입니다. 글쎄, 나는 그에게 어떤 종류의 네트워크를 가지고 있는지 묻습니다. 그는: "무슨 말이야? 음, 그냥 네트워크일 뿐이야." 네트워크는 일반적으로 네트워크와 같습니다. 글쎄, 몇 가지 안내 질문이 있습니다. 네트워크 수준에서 어떤 프로토콜이 사용됩니까? 그는 "여기가 어디죠?" 나는 명확히 설명합니다. “글쎄, IP나 IPX 또는 당신이 가지고 있는 것이 무엇이든...” “오,” 그는 말합니다. “그렇습니다: IPX/다른 것!” 그런데, "뭔가 다른 것이 있다"는 것은 여러분도 눈치채셨겠지만 네트워크 수준에서 조금 더 높은 위치에 있지만 그게 요점이 아닙니다... 전형적인 점은 그가 이 네트워크를 구축하고 심지어는 제대로 관리하지도 못했다는 것입니다. . 시들해진 것도 놀라운 일이 아닙니다... ;) OSI에 대해 알았더라면 10Base-2부터 응용 프로그램까지 5분 안에 다이어그램을 휘갈겨 썼을 것입니다. 그리고 동축선을 검사하기 위해 테이블 ​​아래로 기어갈 필요도 없습니다.

  • 새로운 기술을 배우다

나는 서문에서 이 중요한 측면에 대해 이미 설명했고 다시 반복하겠습니다. 새로운 프로토콜을 연구할 때 먼저 a) 해당 프로토콜 스택이 속하는 프로토콜 스택과 b) 스택의 어느 부분에 있는지 이해해야 합니다. 그리고 아래에서 누구와 상호작용하는지, 위에서는 누구와 상호작용하는지... :) 그리고 이것은 당신의 머릿속에 완전한 명료함을 줄 것입니다. 그리고 다양한 메시지 형식과 API가 있습니다. 이는 기술의 문제입니다 :)

알렉산더 고리야체프, 알렉세이 니스코브스키

네트워크 서버와 클라이언트가 통신하려면 동일한 정보 교환 프로토콜을 사용하여 작업해야 합니다. 즉, 동일한 언어를 "말"해야 합니다. 프로토콜은 네트워크 개체의 모든 상호 작용 수준에서 정보 교환을 구성하기 위한 일련의 규칙을 정의합니다.

종종 OSI 모델이라고 불리는 개방형 시스템 상호 연결 참조 모델이 있습니다. 이 모델은 국제표준화기구(ISO)에서 개발되었습니다. OSI 모델은 네트워크 개체의 상호 작용 체계를 설명하고 작업 목록과 데이터 전송 규칙을 정의합니다. 여기에는 물리적(물리적 - 1), 채널(데이터 링크 - 2), 네트워크(네트워크 - 3), 전송(전송 - 4), 세션(세션 - 5), 데이터 프레젠테이션(프레젠테이션 - 6) 및 적용됨(응용프로그램 - 7). 해당 계층에서 네트워크 기능을 구현하는 소프트웨어가 동일한 데이터를 동일한 방식으로 해석하는 경우 두 컴퓨터는 OSI 모델의 특정 계층에서 서로 통신할 수 있는 것으로 간주됩니다. 이 경우 "지점 간"이라고 하는 두 컴퓨터 간에 직접 통신이 설정됩니다.

프로토콜에 의한 OSI 모델 구현을 프로토콜 스택이라고 합니다. 하나의 특정 프로토콜 프레임워크 내에서 OSI 모델의 모든 기능을 구현하는 것은 불가능합니다. 일반적으로 특정 수준의 작업은 하나 이상의 프로토콜로 구현됩니다. 한 컴퓨터는 동일한 스택의 프로토콜을 실행해야 합니다. 이 경우 컴퓨터는 여러 프로토콜 스택을 동시에 사용할 수 있습니다.

OSI 모델의 각 수준에서 해결되는 작업을 고려해 보겠습니다.

물리층

OSI 모델의 이 수준에서는 데이터 전송 매체에 대한 연결 유형, 물리적 네트워크 토폴로지, 데이터 전송 방법(디지털 또는 아날로그 신호 코딩 사용), 전송된 데이터의 동기화 유형, 분리와 같은 네트워크 구성 요소의 특성이 정의됩니다. 주파수와 시간 다중화를 사용하여 통신 채널을 구성합니다.

OSI 물리 계층 프로토콜의 구현은 비트 전송 규칙을 조정합니다.

물리 계층에는 전송 매체에 대한 설명이 포함되지 않습니다. 그러나 물리 계층 프로토콜의 구현은 특정 전송 매체에 따라 다릅니다. 물리 계층은 일반적으로 다음 네트워크 장비의 연결과 연결됩니다.

  • 전기 신호를 재생하는 집중 장치, 허브 및 중계기;
  • 장치를 전송 미디어에 연결하기 위한 기계적 인터페이스를 제공하는 전송 미디어 커넥터;
  • 모뎀과 다양한 변환 장치디지털 및 아날로그 변환을 수행합니다.

이 모델 계층은 핵심 표준 토폴로지 세트를 사용하여 구축된 엔터프라이즈 네트워크의 물리적 토폴로지를 정의합니다.

첫 번째 기본 세트버스 토폴로지입니다. 이 경우 모든 네트워크 장치와 컴퓨터는 동축 케이블을 사용하여 가장 자주 형성되는 공통 데이터 전송 버스에 연결됩니다. 공통 버스를 형성하는 케이블을 백본이라고 합니다. 버스에 연결된 각 장치에서 신호는 양방향으로 전송됩니다. 케이블에서 신호를 제거하려면 버스 끝에 특수 차단기(터미네이터)를 사용해야 합니다. 고속도로의 기계적 손상은 고속도로에 연결된 모든 장치의 작동에 영향을 미칩니다.

링 토폴로지에는 모든 네트워크 장치와 컴퓨터를 물리적 링에 연결하는 작업이 포함됩니다. 이 토폴로지에서 정보는 항상 링을 따라 한 방향, 즉 스테이션에서 스테이션으로 전송됩니다. 각 네트워크 장치에는 입력 케이블에 정보 수신기가 있고 출력 케이블에 송신기가 있어야 합니다. 단일 링의 정보 전송 매체에 대한 기계적 손상은 모든 장치의 작동에 영향을 미치지만 이중 링을 사용하여 구축된 네트워크는 일반적으로 내결함성 및 자가 복구 기능의 여유가 있습니다. 이중 링 위에 구축된 네트워크에서는 동일한 정보가 링을 따라 양방향으로 전송됩니다. 케이블이 손상된 경우 링은 두 배 길이의 단일 링으로 계속 작동합니다(자가 복구 기능은 사용된 하드웨어에 따라 결정됩니다).

다음 토폴로지는 스타 토폴로지, 즉 스타입니다. 이는 다른 네트워크 장치와 컴퓨터가 빔(별도의 케이블)을 통해 연결되는 중앙 장치의 존재를 제공합니다. 스타 토폴로지에 구축된 네트워크에는 단일 실패 지점이 있습니다. 이 지점이 중앙 장치입니다. 중앙 장치에 장애가 발생하면 모든 교환이 중앙 장치를 통해서만 수행되었으므로 다른 모든 네트워크 참가자는 서로 정보를 교환할 수 없습니다. 중앙 장치의 유형에 따라 하나의 입력에서 수신된 신호는 증폭 여부에 관계없이 모든 출력 또는 정보 수신 장치가 연결된 특정 출력으로 전송될 수 있습니다.

완전히 연결된(메시) 토폴로지는 내결함성이 높습니다. 유사한 토폴로지를 가진 네트워크가 구축되면 각 네트워크 장치 또는 컴퓨터는 네트워크의 다른 모든 구성 요소에 연결됩니다. 이 토폴로지는 중복되어 있어 실용적이지 않은 것처럼 보입니다. 실제로 소규모 네트워크에서는 이 토폴로지가 거의 사용되지 않지만 대규모 엔터프라이즈 네트워크에서는 가장 중요한 노드를 연결하는 데 완전 메시 토폴로지를 사용할 수 있습니다.

고려되는 토폴로지는 대부분 케이블 연결을 사용하여 구축됩니다.

다음을 사용하는 또 다른 토폴로지가 있습니다. 무선 연결, - 셀룰러. 그 안에서 네트워크 장치와 컴퓨터는 영역(셀(셀))으로 결합되어 셀의 트랜시버 장치와만 상호 작용합니다. 셀 간의 정보 전송은 트랜시버 장치에 의해 수행됩니다.

데이터링크 계층

이 수준에서는 네트워크의 논리적 토폴로지, 데이터 전송 매체에 대한 액세스 규칙을 결정하고, 논리적 네트워크 내의 물리적 장치 주소 지정 및 네트워크 장치 간의 정보 전송(전송 동기화 및 연결 서비스) 관리와 관련된 문제를 해결합니다.

링크 계층 프로토콜은 다음과 같이 정의됩니다.

  • 물리적 계층 비트(이진수 1과 0)를 프레임이라고 하는 논리적 정보 그룹으로 구성하는 규칙입니다. 프레임은 헤더와 테일을 갖는 그룹화된 비트의 연속적인 시퀀스로 구성된 링크 계층 데이터 단위입니다.
  • 전송 오류를 감지(때로는 수정)하는 규칙
  • 흐름 제어 규칙(예를 들어 브리지와 같이 OSI 모델의 이 수준에서 작동하는 장치의 경우)
  • 물리적 주소로 네트워크의 컴퓨터를 식별하는 규칙.

대부분의 다른 계층과 마찬가지로 데이터 링크 계층은 데이터 패킷의 시작 부분에 자체 제어 정보를 추가합니다. 이 정보에는 소스 주소와 대상 주소(물리적 또는 하드웨어), 프레임 길이 정보 및 활성 상위 계층 프로토콜 표시가 포함될 수 있습니다.

다음 네트워크 연결 장치는 일반적으로 데이터 링크 계층과 연결됩니다.

  • 교량;
  • 스마트 허브;
  • 스위치;
  • 네트워크 인터페이스 카드(네트워크 인터페이스 카드, 어댑터 등)

링크 계층의 기능은 두 가지 하위 수준으로 구분됩니다(표 1).

  • 미디어 액세스 제어(MAC);
  • 논리적 링크 제어(Logical Link Control, LLC).

MAC 하위 계층은 논리적 네트워크 토폴로지, 정보 전송 매체에 대한 액세스 방법, 네트워크 개체 간의 물리적 주소 지정 규칙과 같은 링크 계층 요소를 정의합니다.

약어 MAC는 네트워크 장치의 물리적 주소를 결정하는 데에도 사용됩니다. 장치의 물리적 주소(제조 단계에서 네트워크 장치 또는 네트워크 카드 내에서 결정됨)는 종종 해당 장치의 MAC 주소라고 합니다. 다수의 네트워크 장치, 특히 네트워크 카드의 경우 프로그래밍 방식으로 MAC 주소를 변경할 수 있습니다. OSI 모델의 데이터 링크 계층은 MAC 주소 사용에 제한을 가한다는 점을 기억해야 합니다. 하나의 물리적 네트워크(더 큰 네트워크의 세그먼트)에서는 동일한 MAC 주소를 사용하는 두 개 이상의 장치가 있을 수 없습니다. 네트워크 개체의 물리적 주소를 결정하기 위해 "노드 주소" 개념을 사용할 수 있습니다. 호스트 주소는 대부분 MAC 주소와 일치하거나 소프트웨어 주소 재할당 중에 논리적으로 결정됩니다.

LLC 하위 계층은 전송 및 서비스 연결을 동기화하는 규칙을 정의합니다. 데이터 링크 계층의 이 하위 계층은 OSI 모델의 네트워크 계층과 긴밀하게 상호 작용하며 물리적(MAC 주소 사용) 연결의 신뢰성을 담당합니다. 네트워크의 논리적 토폴로지는 네트워크에 있는 컴퓨터 간의 데이터 전송 방법과 규칙(순서)을 결정합니다. 네트워크 개체는 네트워크의 논리적 토폴로지에 따라 데이터를 전송합니다. 물리적 토폴로지는 데이터의 물리적 경로를 정의합니다. 그러나 어떤 경우에는 물리적 토폴로지가 네트워크 작동 방식을 반영하지 않습니다. 실제 데이터 경로는 논리적 토폴로지에 의해 결정됩니다. 네트워크 연결 장치와 미디어 액세스 방식은 물리적 매체의 경로와 다를 수 있는 논리적 경로를 따라 데이터를 전송하는 데 사용됩니다. 좋은 예물리적 토폴로지와 논리적 토폴로지의 차이점 - IBM의 토큰링 네트워크. 토큰링 로컬 네트워크는 중앙 분배기(허브)가 있는 별 모양의 회로에 배치된 구리 케이블을 사용하는 경우가 많습니다. 일반 스타 토폴로지와 달리 허브는 수신 신호를 연결된 다른 모든 장치로 전달하지 않습니다. 허브의 내부 회로는 각 수신 신호를 순차적으로 보냅니다. 다음 장치미리 정해진 논리적 링, 즉 원형 패턴으로. 이 네트워크의 물리적 토폴로지는 스타이고 논리적 토폴로지는 링입니다.

물리적 토폴로지와 논리적 토폴로지의 차이점에 대한 또 다른 예는 다음과 같습니다. 이더넷 네트워크. 물리적 네트워크는 구리 케이블과 중앙 허브를 사용하여 구축할 수 있습니다. 스타 토폴로지에 따라 물리적 네트워크가 형성됩니다. 그러나 이더넷 기술은 한 컴퓨터에서 네트워크의 다른 모든 컴퓨터로 정보를 전송할 수 있는 기능을 제공합니다. 허브는 해당 포트 중 하나에서 수신된 신호를 다른 모든 포트로 중계해야 합니다. 버스 토폴로지를 갖춘 논리적 네트워크가 형성되었습니다.

네트워크의 논리적 토폴로지를 결정하려면 신호가 수신되는 방식을 이해해야 합니다.

  • 논리 버스 토폴로지에서는 각 신호가 모든 장치에 의해 수신됩니다.
  • 논리적 링 토폴로지에서 각 장치는 특별히 전송된 신호만 수신합니다.

네트워크 장치가 정보 전송 매체에 어떻게 액세스하는지 아는 것도 중요합니다.

미디어 액세스

논리적 토폴로지는 다른 네트워크 개체에 정보를 전송하는 권한을 제어하는 ​​특수 규칙을 사용합니다. 제어 프로세스는 통신 매체에 대한 액세스를 제어합니다. 전송 매체에 대한 액세스 권한을 얻기 위한 규칙 없이 모든 장치가 작동하도록 허용되는 네트워크를 생각해 보십시오. 이러한 네트워크의 모든 장치는 데이터가 준비되자마자 정보를 전송합니다. 이러한 전송은 때때로 시간이 겹칠 수 있습니다. 중첩으로 인해 신호가 왜곡되고 전송된 데이터가 손실됩니다. 이러한 상황을 충돌이라고 합니다. 충돌은 네트워크 개체 간의 안정적이고 효율적인 정보 전송을 구성하는 것을 허용하지 않습니다.

네트워크의 충돌은 네트워크 개체가 연결된 물리적 네트워크 세그먼트로 확장됩니다. 이러한 연결은 하나의 충돌 공간을 형성하며 충돌의 영향은 모든 사람에게 확장됩니다. 물리적 네트워크를 분할하여 충돌 공간의 크기를 줄이려면 데이터 링크 계층에서 트래픽 필터링 기능을 갖춘 브리지 및 기타 네트워크 장치를 사용할 수 있습니다.

모든 네트워크 엔터티가 충돌을 모니터링, 관리 또는 완화할 수 있을 때까지는 네트워크가 제대로 작동할 수 없습니다. 네트워크에서는 동시 신호의 충돌 및 간섭(오버레이) 횟수를 줄이기 위해 몇 가지 방법이 필요합니다.

경합, 토큰 전달, 폴링 등 네트워크 장치에 대한 정보 전송 권한을 제어하는 ​​규칙을 설명하는 표준 미디어 액세스 방법이 있습니다.

이러한 미디어 액세스 방법 중 하나를 구현하는 프로토콜을 선택하기 전에 다음 요소에 특별한 주의를 기울여야 합니다.

  • 전송 특성 - 연속 또는 펄스;
  • 데이터 전송 횟수;
  • 엄격하게 정의된 시간 간격으로 데이터를 전송해야 하는 필요성;
  • 네트워크의 활성 장치 수.

장점과 단점이 결합된 이러한 각 요소는 어떤 미디어 액세스 방법이 가장 적합한지 결정하는 데 도움이 됩니다.

경쟁.경쟁 기반 시스템은 전송 매체에 대한 액세스가 선착순으로 구현된다고 가정합니다. 즉, 모든 네트워크 장치는 전송 매체 제어를 위해 경쟁합니다. 경쟁 기반 시스템은 네트워크의 모든 장치가 필요한 경우에만 데이터를 전송할 수 있도록 설계되었습니다. 실제로 충돌이 발생하기 때문에 이 방법은 궁극적으로 부분적 또는 전체 데이터 손실을 초래합니다. 각각의 새로운 장치가 네트워크에 추가됨에 따라 충돌 횟수는 기하급수적으로 증가할 수 있습니다. 충돌 횟수가 증가하면 네트워크 성능이 저하되고, 정보 전송 매체가 완전히 포화되는 경우 네트워크 성능이 0으로 감소합니다.

충돌 횟수를 줄이기 위해 스테이션이 데이터 전송을 시작하기 전에 정보 전송 매체를 청취하는 기능을 구현하는 특수 프로토콜이 개발되었습니다. 청취 스테이션이 (다른 스테이션에서) 전송되는 신호를 감지하면 정보 전송을 중단하고 나중에 다시 시도합니다. 이러한 프로토콜을 CSMA(Carrier Sense Multiple Access) 프로토콜이라고 합니다. CSMA 프로토콜은 충돌 횟수를 크게 줄이지만 완전히 제거하지는 않습니다. 그러나 두 스테이션이 케이블을 폴링하고 신호를 찾지 못하고 매체가 깨끗하다고 ​​판단한 다음 동시에 데이터 전송을 시작하면 충돌이 발생합니다.

이러한 적대적 프로토콜의 예는 다음과 같습니다.

  • 캐리어 감지 다중 액세스/충돌 감지(CSMA/CD);
  • 반송파 감지 다중 액세스/충돌 회피(CSMA/CA).

CSMA/CD 프로토콜. CSMA/CD 프로토콜은 전송 전에 케이블을 수신할 뿐만 아니라 충돌을 감지하고 재전송을 시작합니다. 충돌이 감지되면 데이터를 전송하는 스테이션은 임의의 값으로 특수 내부 타이머를 초기화합니다. 타이머가 카운트다운을 시작하고 0에 도달하면 스테이션은 데이터 재전송을 시도해야 합니다. 타이머가 임의의 값으로 초기화되었기 때문에 스테이션 중 하나는 다른 스테이션보다 먼저 데이터 전송을 반복하려고 시도합니다. 따라서, 두 번째 스테이션은 데이터 전송 매체가 이미 사용 중이라고 판단하고 비어 있을 때까지 기다릴 것입니다.

CSMA/CD 프로토콜의 예로는 이더넷 버전 2(Ethernet II, DEC에서 개발) 및 IEEE802.3이 있습니다.

CSMA/CA 프로토콜. CSMA/CA는 액세스 시간 분할 또는 매체에 대한 액세스 권한을 얻기 위한 요청 전송과 같은 방식을 사용합니다. 시간 분할을 사용하면 각 스테이션은 이 스테이션에 대해 엄격하게 정의된 시간에만 정보를 전송할 수 있습니다. 이 경우 타임 슬라이스를 관리하는 메커니즘이 네트워크에 구현되어야 합니다. 네트워크에 연결된 각각의 새로운 스테이션은 자신의 출현을 알리고 정보 전송을 위해 시간 조각을 재분배하는 프로세스를 시작합니다. 전송 매체에 대한 중앙 액세스 제어를 사용하는 경우 각 스테이션은 제어 스테이션으로 전달되는 특수 전송 요청을 생성합니다. 중앙 스테이션은 모든 네트워크 개체의 전송 매체에 대한 액세스를 규제합니다.

CSMA/CA의 예로는 Apple Computer의 LocalTalk 프로토콜이 있습니다.

경합 기반 시스템은 비교적 적은 수의 사용자가 있는 네트워크에서 폭주하는 트래픽(대규모 파일 전송)에 사용하는 데 가장 적합합니다.

토큰 전송이 가능한 시스템.토큰 전달 시스템에서는 작은 프레임(토큰)이 특정 순서에 따라 한 장치에서 다른 장치로 전달됩니다. 토큰은 전송 매체에 대한 임시 제어권을 토큰을 보유한 장치로 전송하는 특수 메시지입니다. 토큰을 전달하면 네트워크의 장치 간에 액세스 제어가 분산됩니다.

각 장치는 토큰을 수신하는 장치와 토큰을 전달해야 하는 장치를 알고 있습니다. 일반적으로 이러한 장치는 토큰 소유자와 가장 가까운 이웃입니다. 각 장치는 주기적으로 토큰을 제어하고 해당 작업을 수행(정보 전송)한 후 사용할 수 있도록 다음 장치에 토큰을 전달합니다. 프로토콜은 각 장치가 토큰을 제어할 수 있는 시간을 제한합니다.

여러 가지 토큰 전달 프로토콜이 있습니다. 토큰 전달을 사용하는 두 가지 네트워킹 표준은 IEEE 802.4 토큰 버스와 IEEE 802.5 토큰 링입니다. 토큰 버스 네트워크는 토큰 전달 액세스 제어와 물리적 또는 논리적 버스 토폴로지를 사용하는 반면, 토큰 링 네트워크는 토큰 전달 액세스 제어와 물리적 또는 논리적 링 토폴로지를 사용합니다.

토큰 전달 네트워크는 디지털 오디오 또는 비디오 데이터와 같이 시간에 민감한 우선순위 트래픽이 있거나 사용자 수가 매우 많은 경우에 사용해야 합니다.

조사.폴링은 매체에 대한 액세스 중재자 역할을 할 하나의 장치(컨트롤러, 기본 또는 "마스터" 장치라고 함)를 할당하는 액세스 방법입니다. 이 장치는 미리 정의된 순서에 따라 다른 모든 장치(보조)를 폴링하여 전송할 정보가 있는지 확인합니다. 보조 장치로부터 데이터를 수신하기 위해 기본 장치는 보조 장치에 요청을 보낸 다음 보조 장치로부터 데이터를 수신하여 수신 장치로 전달합니다. 그런 다음 기본 장치는 다른 보조 장치를 폴링하고 해당 장치로부터 데이터를 수신하는 등의 작업을 수행합니다. 프로토콜은 폴링 후 각 보조 장치가 전송할 수 있는 데이터 양을 제한합니다. 폴링 시스템은 장비 자동화와 같이 시간에 민감한 네트워크 장치에 이상적입니다.

이 계층은 연결 서비스도 제공합니다. 연결 서비스에는 세 가지 유형이 있습니다.

  • 승인되지 않은 비연결 서비스 - 흐름 제어나 오류 제어 또는 패킷 순서 지정 없이 프레임을 보내고 받습니다.
  • 연결 지향 서비스 - 영수증(확인)을 발행하여 흐름 제어, 오류 제어 및 패킷 순서 지정을 제공합니다.
  • 승인 비연결 서비스 - 두 네트워크 노드 간 전송 중 흐름을 제어하고 오류를 제어하기 위해 수신을 사용합니다.

데이터 링크 계층의 LLC 하위 계층은 단일 네트워크 인터페이스를 통해 작동할 때 여러 네트워크 프로토콜(다른 프로토콜 스택의)을 동시에 사용할 수 있는 기능을 제공합니다. 즉, 컴퓨터에 하나만 있는 경우 랜카드, 그러나 다양한 제조업체의 다양한 네트워크 서비스를 사용해야 하는 경우 LLC 하위 수준의 클라이언트 네트워크 소프트웨어가 이러한 작업의 가능성을 제공합니다.

네트워크 계층

네트워크 수준에서는 논리 네트워크 간의 데이터 전달 규칙, 네트워크 장치의 논리 주소 구성, 라우팅 정보의 정의, 선택 및 유지 관리, 게이트웨이 작동에 대한 규칙을 결정합니다.

네트워크 계층의 주요 목표는 네트워크의 특정 지점으로 데이터를 이동(전달)하는 문제를 해결하는 것입니다. 네트워크 계층에서의 데이터 전달은 일반적으로 물리적 장치 주소 지정을 사용하여 데이터를 전송하는 OSI 모델의 데이터 링크 계층에서의 데이터 전달과 유사합니다. 그러나 데이터 링크 계층의 주소 지정은 하나의 논리 네트워크에만 적용되며 해당 네트워크 내에서만 유효합니다. 네트워크 계층은 함께 연결될 때 하나의 대규모 네트워크를 형성하는 많은 독립적(종종 이종) 논리 네트워크 간에 정보를 전송하는 방법과 수단을 설명합니다. 이러한 네트워크를 인터네트워크라고 하며, 네트워크 간의 정보 전달 과정을 인터네트워킹이라고 합니다.

데이터 링크 계층에서 물리적 주소 지정을 사용하면 데이터가 동일한 논리 네트워크의 모든 장치에 전달됩니다. 각 네트워크 장치, 각 컴퓨터는 수신된 데이터의 목적을 결정합니다. 데이터가 컴퓨터를 위한 것이라면 컴퓨터는 이를 처리하지만, 그렇지 않은 경우에는 무시합니다.

데이터 링크 계층과 달리 네트워크 계층은 인터네트워크에서 특정 경로를 선택할 수 있으며 데이터가 처리되지 않은 논리 네트워크로 데이터를 보내는 것을 피할 수 있습니다. 네트워크 계층은 스위칭, 네트워크 계층 주소 지정 및 라우팅 알고리즘을 통해 이를 수행합니다. 네트워크 계층은 또한 이종 네트워크로 구성된 인터네트워크를 통해 데이터의 올바른 경로를 보장하는 역할도 담당합니다.

네트워크 계층 구현 요소 및 방법은 다음과 같이 정의됩니다.

  • 논리적으로 분리된 모든 네트워크에는 고유한 네트워크 주소가 있어야 합니다.
  • 스위칭은 인터네트워크를 통해 연결이 이루어지는 방식을 정의합니다.
  • 컴퓨터와 라우터가 인터네트워크를 통과하는 데이터에 대한 최상의 경로를 결정하도록 라우팅을 구현하는 기능
  • 네트워크는 상호 연결된 네트워크 내에서 예상되는 오류 수에 따라 다양한 수준의 연결 서비스를 수행합니다.

라우터와 일부 스위치는 OSI 모델의 이 계층에서 작동합니다.

네트워크 계층은 네트워크 개체의 논리적 네트워크 주소 형성 규칙을 결정합니다. 대규모 상호 연결된 네트워크 내에서 각 네트워크 개체에는 고유한 논리 주소가 있어야 합니다. 논리 주소의 형성에는 두 가지 구성 요소, 즉 모든 네트워크 개체에 공통되는 논리 네트워크 주소와 이 개체에 고유한 네트워크 개체의 논리 주소가 관련됩니다. 네트워크 객체의 논리 주소를 구성할 때 객체의 물리적 주소를 사용할 수도 있고, 임의의 논리 주소를 결정할 수도 있습니다. 논리 주소 지정을 사용하면 서로 다른 논리 네트워크 간의 데이터 전송을 구성할 수 있습니다.

각 네트워크 개체, 각 컴퓨터는 많은 네트워크 기능을 동시에 수행할 수 있어 다양한 서비스의 작동을 보장합니다. 서비스에 액세스하기 위해 포트 또는 소켓이라는 특수 서비스 식별자가 사용됩니다. 서비스에 액세스할 때 서비스 식별자는 서비스를 제공하는 컴퓨터의 논리 주소 바로 뒤에옵니다.

많은 네트워크에서는 특정하고 사전 정의된 잘 알려진 작업을 수행할 목적으로 논리 주소 및 서비스 식별자 그룹을 예약합니다. 예를 들어, 모든 네트워크 개체에 데이터를 보내야 하는 경우 특수 브로드캐스트 주소로 전송이 이루어집니다.

네트워크 계층은 두 네트워크 개체 간의 데이터 전송 규칙을 정의합니다. 이 전송은 스위칭이나 라우팅을 사용하여 수행될 수 있습니다.

데이터 전송을 위한 전환 방법에는 회선 전환, 메시지 전환, 패킷 전환의 세 가지 방법이 있습니다.

회선 교환을 사용하면 송신자와 수신자 사이에 데이터 전송 채널이 설정됩니다. 이 채널은 전체 커뮤니케이션 세션 동안 활성화됩니다. 이 방법을 사용할 경우 대역폭 부족, 스위칭 장비의 부하, 수신자의 혼잡 등으로 인해 채널 할당에 오랜 지연이 발생할 수 있습니다.

메시지 전환을 사용하면 "저장 및 전달" 원칙을 사용하여 전체(부분으로 나누어지지 않음) 메시지를 전송할 수 있습니다. 각 중간 장치는 메시지를 수신하여 로컬에 저장하고, 메시지를 전송해야 하는 통신 채널이 비어 있으면 메시지를 보냅니다. 이 방법은 이메일 메시지를 전송하고 전자 문서 관리를 구성하는 데 매우 적합합니다.

패킷 교환은 이전 두 가지 방법의 장점을 결합합니다. 각각의 큰 메시지는 작은 패킷으로 나누어지고, 각 패킷은 수신자에게 순차적으로 전송됩니다. 각 패킷이 인터네트워크를 통과할 때 해당 순간에 가장 좋은 경로가 결정됩니다. 한 메시지의 일부가 서로 다른 시간에 수신자에게 도착할 수 있으며, 모든 부분이 함께 수집된 후에만 수신자가 수신된 데이터로 작업할 수 있다는 것이 밝혀졌습니다.

데이터의 다음 경로를 결정할 때마다 최상의 경로를 선택해야 합니다. 최적의 경로를 결정하는 작업을 라우팅이라고 합니다. 이 작업은 라우터에 의해 수행됩니다. 라우터의 임무는 가능한 데이터 전송 경로를 결정하고 라우팅 정보를 유지하며 최상의 경로를 선택하는 것입니다. 라우팅은 정적으로 또는 동적으로 수행될 수 있습니다. 정적 라우팅을 지정할 때 논리 네트워크 간의 모든 관계를 지정하고 변경되지 않은 상태로 유지해야 합니다. 동적 라우팅은 라우터 자체가 새로운 경로를 결정하거나 이전 경로에 대한 정보를 수정할 수 있다고 가정합니다. 동적 라우팅은 특별한 라우팅 알고리즘을 사용하며, 그 중 가장 일반적인 것은 거리 벡터와 링크 상태입니다. 첫 번째 경우, 라우터는 인접 라우터의 네트워크 구조에 대한 간접적인 정보를 사용합니다. 두 번째 경우, 라우터는 자신의 통신 채널에 대한 정보로 작동하고 특별한 대표 라우터와 상호 작용하여 완전한 네트워크 맵을 구축합니다.

최적의 경로 선택은 라우터를 통과하는 홉 수(홉 수) 및 대상 네트워크에 도달하는 데 필요한 틱 수(시간 단위)(틱 수)와 같은 요인의 영향을 가장 많이 받습니다.

네트워크 계층 연결 서비스는 OSI 모델의 데이터 링크 계층의 LLC 하위 계층의 연결 서비스가 사용되지 않을 때 작동합니다.

통합 네트워크를 구축하려면 다양한 기술을 활용하고 다양한 서비스를 제공하는 논리적 네트워크를 연결해야 합니다. 네트워크가 작동하려면 논리적 네트워크가 데이터와 제어 정보를 올바르게 해석할 수 있어야 합니다. 이 작업은 하나의 논리 네트워크의 규칙을 다른 논리 네트워크의 규칙으로 변환하고 해석하는 장치 또는 응용 프로그램인 게이트웨이를 사용하여 해결됩니다. 일반적으로 게이트웨이는 OSI 모델의 모든 수준에서 구현될 수 있지만 대부분 모델의 상위 수준에서 구현됩니다.

전송 계층

전송 계층을 사용하면 OSI 모델의 상위 계층에 있는 애플리케이션으로부터 네트워크의 물리적, 논리적 구조를 숨길 수 있습니다. 애플리케이션은 매우 보편적이고 물리적 및 논리적 네트워크 토폴로지에 의존하지 않는 서비스 기능으로만 작동합니다. 논리 및 물리적 네트워크전송 계층이 데이터를 전송하는 이전 계층에서 구현됩니다.

전송 계층은 종종 하위 계층의 안정적인 연결 지향 연결 서비스 부족을 보완합니다. "신뢰할 수 있다"는 말은 모든 경우에 모든 데이터가 전달된다는 의미는 아닙니다. 그러나 전송 계층 프로토콜의 안정적인 구현은 일반적으로 데이터 전달을 승인하거나 거부할 수 있습니다. 데이터가 수신 장치에 올바르게 전달되지 않으면 전송 계층은 전달이 불가능했음을 상위 계층에 재전송하거나 알릴 수 있습니다. 그러면 상위 수준에서 필요한 수정 조치를 취하거나 사용자에게 선택권을 제공할 수 있습니다.

많은 프로토콜 컴퓨터 네트워크복잡하고 기억하기 어려운 영숫자 주소 대신 자연어로 된 간단한 이름으로 작업할 수 있는 기능을 사용자에게 제공합니다. 주소/이름 확인은 이름과 영숫자 주소를 서로 식별하거나 매핑하는 기능입니다. 이 기능은 네트워크의 모든 엔터티 또는 디렉토리 서버( 디렉토리 서버), 네임서버 등 다음 정의는 주소/이름 확인 방법을 분류합니다.

  • 소비자 서비스 개시;
  • 서비스 제공업체에 의해 시작되었습니다.

첫 번째 경우, 네트워크 사용자는 서비스의 정확한 위치를 알지 못한 채 논리적 이름으로 서비스에 액세스합니다. 사용자는 이 서비스가 다음 국가에서 사용 가능한지 여부를 모릅니다. 이 순간. 연결 시 논리적 이름이 물리적 이름과 일치하고 사용자의 워크스테이션이 서비스에 대한 호출을 직접 시작합니다. 두 번째 경우 각 서비스는 정기적으로 모든 네트워크 클라이언트에 자신에 대해 알립니다. 각 고객은 언제든지 서비스 이용 가능 여부를 알고 있으며 서비스에 직접 연락하는 방법을 알고 있습니다.

주소 지정 방법

서비스 주소는 네트워크 장치에서 실행되는 특정 소프트웨어 프로세스를 식별합니다. 이러한 주소 외에도 서비스 제공업체는 서비스를 요청하는 장치와의 다양한 대화를 모니터링합니다. 두 가지 다른 대화 방법은 다음 주소를 사용합니다.

  • 연결 ID;
  • 거래ID.

연결 ID, 포트 또는 소켓이라고도 하는 연결 식별자는 각 대화를 식별합니다. 연결 공급자는 연결 ID를 사용하여 둘 이상의 클라이언트와 통신할 수 있습니다. 서비스 제공자는 각 스위칭 엔터티를 해당 번호로 참조하고 다른 하위 계층 주소를 조정하기 위해 전송 계층을 사용합니다. 연결 ID는 특정 대화와 연결되어 있습니다.

트랜잭션 ID는 연결 ID와 유사하지만 대화보다 작은 단위로 작동합니다. 트랜잭션은 요청과 응답으로 구성됩니다. 서비스 제공자와 소비자는 전체 대화가 아닌 각 거래의 출발과 도착을 추적합니다.

세션 레이어

세션 계층은 서비스를 요청하고 전달하는 장치 간의 통신을 용이하게 합니다. 통신 세션은 통신 개체 간의 대화를 설정, 유지, 동기화 및 관리하는 메커니즘을 통해 제어됩니다. 또한 이 계층은 상위 계층이 사용 가능한 네트워크 서비스를 식별하고 연결하는 데 도움이 됩니다.

세션 계층은 하위 계층에서 제공하는 논리적 주소 정보를 사용하여 이름을 식별하고 서버 주소, 상위 수준에서 필요합니다.

세션 계층은 또한 서비스 공급자 장치와 소비자 장치 간의 대화를 시작합니다. 이 기능을 수행할 때 세션 계층은 종종 각 개체를 나타내거나 식별하고 해당 개체에 대한 액세스 권한을 조정합니다.

세션 계층은 단방향, 반이중 및 전이중의 세 가지 통신 방법 중 하나를 사용하여 대화 관리를 구현합니다.

단순 통신에는 소스에서 수신자로의 단방향 정보 전송만 포함됩니다. 이 통신 방법은 (수신자에서 소스로) 피드백을 제공하지 않습니다. 반이중 방식을 사용하면 양방향 정보 전송에 하나의 데이터 전송 매체를 사용할 수 있지만 정보는 한 번에 한 방향으로만 전송될 수 있습니다. 전이중 방식은 데이터 전송 매체를 통해 양방향으로 동시 정보 전송을 보장합니다.

연결 설정, 데이터 전송, 연결 종료로 구성된 두 네트워크 개체 간의 통신 세션 관리도 OSI 모델의 이 수준에서 수행됩니다. 세션이 설정된 후 이 계층의 기능을 구현하는 소프트웨어는 연결이 종료될 때까지 연결 기능을 확인(유지)할 수 있습니다.

데이터 표현 계층

데이터 표현 계층의 주요 임무는 데이터를 모든 네트워크 애플리케이션과 애플리케이션이 실행되는 컴퓨터에서 이해할 수 있는 상호 일관된 형식(교환 구문)으로 변환하는 것입니다. 이 수준에서는 데이터 압축 및 압축 해제 작업과 암호화도 해결됩니다.

변환은 바이트의 비트 순서, 단어의 바이트 순서, 문자 코드 및 파일 이름 구문을 변경하는 것을 의미합니다.

비트와 바이트의 순서를 변경해야 하는 이유는 다양한 프로세서, 컴퓨터, 컴플렉스 및 시스템이 많이 존재하기 때문입니다. 여러 제조업체의 프로세서는 바이트의 0비트와 7번째 비트를 다르게 해석할 수 있습니다. 0비트가 가장 중요한 비트이거나 7번째 비트입니다. 마찬가지로, 큰 정보 단위(단어)를 구성하는 바이트도 다르게 해석됩니다.

다양한 운영 체제를 사용하는 사용자가 올바른 이름과 내용이 포함된 파일 형식의 정보를 받을 수 있도록 이 계층은 파일 구문의 올바른 변환을 보장합니다. 다양한 운영 체제가 이를 처리합니다. 파일 시스템, 파일 이름을 구성하는 다양한 방법을 구현하십시오. 파일의 정보도 특정 문자 인코딩으로 저장됩니다. 두 개의 네트워크 개체가 상호 작용할 때 각각이 파일 정보를 다르게 해석할 수 있다는 것이 중요하지만 정보의 의미는 바뀌어서는 안 됩니다.

데이터 표현 계층은 네트워크로 연결된 모든 애플리케이션과 애플리케이션이 실행되는 컴퓨터에서 이해할 수 있는 상호 일관된 형식(교환 구문)으로 데이터를 변환합니다. 또한 데이터를 압축하고 확장할 수 있을 뿐만 아니라 데이터를 암호화하고 해독할 수도 있습니다.

컴퓨터는 이진수 1과 0을 사용하여 데이터를 표현하기 위해 다양한 규칙을 사용합니다. 이러한 모든 규칙은 사람이 읽을 수 있는 데이터를 제공한다는 공통 목표를 달성하려고 시도하지만 컴퓨터 제조업체와 표준 조직은 서로 모순되는 규칙을 만들었습니다. 서로 다른 규칙 세트를 사용하는 두 컴퓨터가 서로 통신을 시도할 때 일부 변환을 수행해야 하는 경우가 많습니다.

로컬 및 네트워크 운영 체제는 무단 사용으로부터 데이터를 보호하기 위해 데이터를 암호화하는 경우가 많습니다. 암호화는 데이터를 보호하는 여러 가지 방법을 설명하는 일반적인 용어입니다. 보호는 순열, 대체 또는 대수적 방법 중 하나 이상을 사용하는 데이터 스크램블링을 사용하여 수행되는 경우가 많습니다.

이러한 각 방법은 암호화 알고리즘을 아는 사람만 이해할 수 있는 방식으로 데이터를 보호하는 특별한 방법일 뿐입니다. 데이터 암호화는 하드웨어나 소프트웨어에서 수행될 수 있습니다. 그러나 종단 간 데이터 암호화는 일반적으로 프로그래밍 방식으로 수행되며 프레젠테이션 계층 기능의 일부로 간주됩니다. 사용된 암호화 방법에 대해 개체에 알리기 위해 일반적으로 비밀 키와 공개 키라는 두 가지 방법이 사용됩니다.

비밀 키 암호화 방법은 단일 키를 사용합니다. 키를 소유한 네트워크 엔터티는 각 메시지를 암호화하고 해독할 수 있습니다. 따라서 키는 비밀로 유지되어야 합니다. 키는 하드웨어 칩에 내장되거나 네트워크 관리자가 설치할 수 있습니다. 키가 변경될 때마다 모든 장치를 수정해야 합니다(새 키 값을 전송하기 위해 네트워크를 사용하지 않는 것이 좋습니다).

공개 키 암호화 방법을 사용하는 네트워크 개체에는 비밀 키와 일부 알려진 값이 제공됩니다. 객체는 개인 키를 통해 알려진 값을 조작하여 공개 키를 생성합니다. 통신을 시작하는 엔터티는 공개 키를 수신자에게 보냅니다. 그런 다음 다른 엔터티는 자신의 개인 키와 제공된 공개 키를 수학적으로 결합하여 상호 허용되는 암호화 값을 설정합니다.

공개 키만 소유하는 것은 권한이 없는 사용자에게 거의 쓸모가 없습니다. 결과 암호화 키의 복잡성은 합리적인 시간 내에 계산할 수 있을 만큼 충분히 높습니다. 자신의 개인 키와 다른 사람의 공개 키를 아는 것조차도 큰 숫자에 대한 로그 계산의 복잡성으로 인해 다른 비밀 키를 결정하는 데 큰 도움이 되지 않습니다.

애플리케이션 레이어

애플리케이션 계층에는 각 유형의 네트워크 서비스와 관련된 모든 요소와 기능이 포함되어 있습니다. 하위 6개 계층은 네트워크 서비스에 대한 일반적인 지원을 제공하는 작업과 기술을 결합하는 반면, 애플리케이션 계층은 특정 네트워크 서비스 기능을 수행하는 데 필요한 프로토콜을 제공합니다.

서버는 네트워크 클라이언트에게 자신이 제공하는 서비스 유형에 대한 정보를 제공합니다. 제공되는 서비스를 식별하는 주요 메커니즘은 서비스 주소와 같은 요소에 의해 제공됩니다. 또한 서버는 능동 및 수동 서비스 표시와 같은 서비스 표시 방법을 사용합니다.

활성 서비스 광고를 수행할 때 각 서버는 해당 서비스의 가용성을 알리는 메시지(서비스 주소 포함)를 주기적으로 보냅니다. 클라이언트는 특정 유형의 서비스에 대해 네트워크 장치를 폴링할 수도 있습니다. 네트워크 클라이언트는 서버가 작성한 표현을 수집하고 현재 사용 가능한 서비스 테이블을 형성합니다. 능동적 표현 방법을 사용하는 대부분의 네트워크는 서비스 표현에 대한 특정 유효 기간도 정의합니다. 예를 들어, 네트워크 프로토콜서비스 제출이 5분마다 전송되어야 한다고 지정하면 클라이언트는 지난 5분 이내에 제출되지 않은 서비스 제출 시간을 초과하게 됩니다. 제한 시간이 만료되면 클라이언트는 테이블에서 서비스를 제거합니다.

서버는 자신의 서비스와 주소를 디렉터리에 등록하여 수동적인 서비스 광고를 수행합니다. 고객이 결정하고 싶을 때 사용 가능한 유형서비스를 제공하는 경우 원하는 서비스의 위치와 주소를 디렉토리에 문의하기만 하면 됩니다.

네트워크 서비스를 사용하려면 먼저 컴퓨터의 로컬 운영 체제에서 이를 사용할 수 있도록 해야 합니다. 이 문제를 해결하는 방법에는 여러 가지가 있지만 각각의 방법은 지역이 위치한 위치나 수준에 따라 결정될 수 있습니다. 운영 체제네트워크 운영 체제를 인식합니다. 제공되는 서비스는 세 가지 범주로 나눌 수 있습니다.

  • 운영 체제 호출을 가로채기;
  • 원격 모드;
  • 공동 데이터 처리.

OC 통화 차단을 사용할 때 로컬 운영 체제는 네트워크 서비스의 존재를 전혀 인식하지 못합니다. 예를 들어, DOS 응용 프로그램이 네트워크 파일 서버에서 파일을 읽으려고 하면 해당 파일이 로컬 저장 장치에 있다고 생각합니다. 사실 특별한 작품 소프트웨어로컬 운영 체제(DOS)에 도달하기 전에 파일 읽기 요청을 가로채서 네트워크 파일 서비스로 전달합니다.

다른 극단인 원격 작업 모드에서는 로컬 운영 체제가 네트워크를 인식하고 네트워크 서비스에 요청을 전달하는 일을 담당합니다. 그러나 서버는 클라이언트에 대해 아무것도 모릅니다. 서버 운영 체제에서는 서비스에 대한 모든 요청이 내부인지 네트워크를 통해 전송되는지에 관계없이 동일하게 보입니다.

마지막으로 네트워크의 존재를 인식하는 운영 체제가 있습니다. 서비스 소비자와 서비스 제공자 모두 서로의 존재를 인식하고 협력하여 서비스 이용을 조정합니다. 이러한 유형의 서비스 사용은 일반적으로 P2P 협업 데이터 처리에 필요합니다. 협업 데이터 처리에는 단일 작업을 수행하기 위해 데이터 처리 기능을 공유하는 것이 포함됩니다. 이는 운영 체제가 다른 사람의 존재와 능력을 인식하고 원하는 작업을 수행하기 위해 다른 사람과 협력할 수 있어야 함을 의미합니다.

컴퓨터프레스 6"1999

다양한 제조업체의 네트워크 장치 작동을 조화시키고 다양한 신호 전파 환경을 사용하는 네트워크의 상호 작용을 보장하기 위해 OSI(개방형 시스템 상호 작용)의 참조 모델이 만들어졌습니다. 참조 모델은 계층적 원리를 기반으로 구축되었습니다. 각 수준은 상위 수준에 서비스를 제공하고 하위 수준의 서비스를 사용합니다.

데이터 처리는 애플리케이션 수준에서 시작됩니다. 이후 데이터는 참조 모델의 모든 계층을 통과하고 물리 계층을 통해 통신 채널로 전송됩니다. 수신 시 데이터의 역처리가 발생합니다.

OSI 참조 모델은 두 가지 개념을 도입합니다. 규약그리고 상호 작용.

프로토콜은 다양한 개방형 시스템의 계층이 상호 작용하는 기반이 되는 일련의 규칙입니다.

인터페이스는 개방형 시스템의 요소들 간의 상호 작용 수단과 방법의 집합입니다.

프로토콜은 서로 다른 노드에 있는 동일한 수준의 모듈 간의 상호 작용 규칙과 동일한 노드에 있는 인접한 수준의 모듈 간의 인터페이스를 정의합니다.

OSI 참조 모델에는 총 7개의 계층이 있습니다. 실제 스택은 더 적은 수의 레이어를 사용한다는 점은 주목할 가치가 있습니다. 예를 들어, 널리 사용되는 TCP/IP는 4개의 계층만 사용합니다. 왜 그런 겁니까? 잠시 후에 설명하겠습니다. 이제 7개 레벨을 각각 개별적으로 살펴보겠습니다.

OSI 모델 계층:

  • 신체 수준. 데이터 전송 매체의 유형, 인터페이스의 물리적, 전기적 특성, 신호 유형을 결정합니다. 이 계층은 약간의 정보를 다룹니다. 물리 계층 프로토콜의 예: 이더넷, ISDN, Wi-Fi.
  • 데이터 링크 수준. 전송 매체에 대한 접근, 오류 정정, 안정적인 데이터 전송을 담당합니다. 리셉션에서물리 계층에서 수신된 데이터는 프레임으로 압축된 후 무결성이 검사됩니다. 오류가 없으면 데이터가 네트워크 계층으로 전송됩니다. 오류가 있으면 프레임이 삭제되고 재전송 요청이 생성됩니다. 데이터 링크 계층은 MAC(Media Access Control)과 LLC(Local Link Control)의 두 하위 계층으로 나뉩니다. MAC는 공유된 물리적 매체에 대한 액세스를 규제합니다. LLC는 네트워크 계층 서비스를 제공합니다. 스위치는 데이터 링크 계층에서 작동합니다. 프로토콜의 예: 이더넷, PPP.
  • 네트워크 계층. 주요 작업은 라우팅(최적의 데이터 전송 경로 결정, 노드의 논리적 주소 지정)입니다. 또한 이 수준에서는 네트워크 문제(ICMP 프로토콜) 문제 해결을 담당할 수도 있습니다. 네트워크 계층은 패킷과 함께 작동합니다. 프로토콜의 예: IP, ICMP, IGMP, BGP, OSPF).
  • 전송 계층. 데이터가 전송된 순서대로 오류, 손실 및 중복 없이 데이터를 전달하도록 설계되었습니다. 발신자에서 수신자로의 데이터 전송에 대한 엔드투엔드 제어를 수행합니다. 프로토콜의 예: TCP, UDP.
  • 세션 수준. 통신 세션의 생성/유지/종료를 관리합니다. 프로토콜의 예: L2TP, RTCP.
  • 임원 수준. 데이터를 다음으로 변환합니다. 필수 양식, 암호화/인코딩, 압축.
  • 애플리케이션 레이어. 사용자와 네트워크 간의 상호 작용을 제공합니다. 클라이언트 측 애플리케이션과 상호 작용합니다. 프로토콜의 예: HTTP, FTP, Telnet, SSH, SNMP.

참조 모델에 대해 알아본 후 TCP/IP 프로토콜 스택을 살펴보겠습니다.

TCP/IP 모델에는 4개의 계층이 정의되어 있습니다. 위 그림에서 볼 수 있듯이 하나의 TCP/IP 계층은 OSI 모델의 여러 계층에 해당할 수 있습니다.

TCP/IP 모델 수준:

  • 네트워크 인터페이스 수준. OSI 모델의 두 하위 계층인 데이터 링크와 물리적에 해당합니다. 이를 바탕으로 이 수준이 전송 매체(연선, 광섬유, 무선)의 특성, 신호 유형, 코딩 방법, 전송 매체에 대한 액세스, 오류 수정, 물리적 주소 지정(MAC 주소)을 결정한다는 것이 분명합니다. . TCP/IP 모델에서는 Ethrnet 프로토콜과 그 파생물(Fast Ethernet, Gigabit Ethernet)이 이 수준에서 작동합니다.
  • 상호 연결 레이어. OSI 모델의 네트워크 계층에 해당합니다. 라우팅, 논리적 주소 지정(IP 주소) 등 모든 기능을 대신합니다. IP 프로토콜은 이 수준에서 작동합니다.
  • 전송 계층. OSI 모델의 전송 계층에 해당합니다. 소스에서 대상으로 패킷을 전달하는 역할을 담당합니다. ~에 이 수준 TCP와 UDP의 두 가지 프로토콜이 사용됩니다. TCP는 오류 발생 시 재전송을 위해 사전 연결 요청을 생성하므로 UDP보다 더 안정적입니다. 그러나 동시에 TCP는 UDP보다 느립니다.
  • 애플리케이션 레이어. 주요 임무는 호스트의 애플리케이션 및 프로세스와 상호 작용하는 것입니다. 프로토콜의 예: HTTP, FTP, POP3, SNMP, NTP, DNS, DHCP.

캡슐화(Encapsulation)란 데이터 패킷을 패키징하는 방식으로, 하위 계층의 헤더를 상위 계층에 포함시켜 독립적인 패킷 헤더를 추상화하는 방식이다.

살펴 보자 구체적인 예. 컴퓨터에서 웹사이트로 이동하고 싶다고 가정해 보겠습니다. 이를 위해 우리 컴퓨터는 필요한 사이트 페이지가 저장된 웹 서버의 리소스를 얻기 위해 http 요청을 준비해야 합니다. 애플리케이션 수준에서는 HTTP 헤더가 브라우저 데이터에 추가됩니다. 다음으로 전송 계층에서는 송신자 및 수신자 포트 번호(HTTP의 경우 포트 80)를 포함하는 TCP 헤더가 패킷에 추가됩니다. 네트워크 계층에서는 발신자와 수신자의 IP 주소를 포함하는 IP 헤더가 생성됩니다. 전송 직전에 Ethrnet 헤더가 링크 계층에 추가되며 여기에는 송신자와 수신자의 물리적 주소(MAC 주소)가 포함됩니다. 이러한 모든 절차가 끝나면 정보 비트 형태의 패킷이 네트워크를 통해 전송됩니다. 리셉션에서는 반대 절차가 진행됩니다. 각 수준의 웹 서버는 해당 헤더를 확인합니다. 검사가 성공하면 헤더는 폐기되고 패킷은 다음 위치로 이동합니다. 최상위 수준. 그렇지 않으면 전체 패킷이 삭제됩니다.




맨 위