'OSI'에 해당되는 글 2건

  1. 2009.12.18 브리지와 스위치의 차이점 1
  2. 2009.12.18 OSI 7 layer 설명 2
2009. 12. 18. 12:23

브리지와 스위치의 차이점

우선 네트워크가 이뤄지는 OSI 7 Layer 를 보면 다음과 같다.  ( 자세한 설명은 이전 글 http://darkrang.tistory.com/155 참조 )
1. 물리계층 ( Physical layer )
2. 데이터 링크 계층 ( Data link layer )
3. 네트워크 계층 ( Network layer )
4. 전송 계층 ( Transport layer )
5. 세션 계층 ( Session layer )
6. 표현 계층 ( Presentation layer )
7. 응용 계층 ( Application layer )


여기서 브리지가 속하는 것은 2단계 데이터링크계층에 속하는 장비이다. 즉 레이어2 에 속하는 장비이며
스위치는 3단계 네트워크 계층에 속하는 장비임 즉 레이어3 .

차이점을 간략히 설명하면 다음과 같다.

  브리지 ( Bridge )
스위치  ( Switch )
 처리방식 소프트웨어
하드웨어
 Port 별 속도
같음
다른 속도도 지원
 Port 수
2~3개
10~몇백개
 처리방식 및 속도
 Cut-though 또는 Store-and-forwarding
스위치에 비해 느림
Store-and-forwarding
브리지에 비해 빠름



브리지는 콜리전 도메인(collision domain)을 나눠주기 위해서 만들어졌음
( 참고로 콜리전 도메인은 한마디로 PC 들의 묶음이라고 생각하면 될듯 , 여러 개의 네트워크 장비나 호스트가
동일한 미디어에 연결되어 있어 두 대의 호스트가 동시에 데이터를 보낼 때 충돌이 일어나는 범위
즉 허브로 연결된 수십대의 컴퓨터의 네트워크 범위를 뜻함
만약 콜리전 도메인을 이루는 PC 가 많아지면 많아질 수록 서로의 통신에 영향을 주게 되어
통신 속도가 저하됨 )


브리지가 하는 역할은 다음과 같음
(1) Learning : 포트에 연결된 출발지의 Mac address 를 브리지안의 맥테이블에 저장하는 기능

(2) Flooding : 만약 목적지 주소가 송신지와는 다른 네트워크에 존재하며 mac table에 목적지 주소가 이미 존재하고 있다면 테이블에 있는 정보를 이용하여 적절한 경로를 결정한 다음, 해당하는, 전송로로 패킷을 전송한다.
만약 table에 목적지 주소가 등록되어 있지 않으면 목적지에 해당하는 장치가 어느 네트워크에 속해 있는지 알길이 없으므로 Frame이 수신되어온 회선을 제외한 모든 전송 회선으로 Flooding(ff:ff:ff:ff:ff:ff) Frame을 보낸다.

(3) Forwarding : 목적지 주소가 출발지 주소와 다른 세그먼트에 위치하는 경우 bridge가 자신의 테이블을 살펴서 어떤 포트로 길을 열어줘야 하는가를 확인 한 다음 그 포트로 프레임을 전달하는 역할은 한다.
( ※ Flooding 은 들어온 포트 이외의 모든 포트로 뿌리는 것이고, Forwarding 은 들어온 포트말고 해당 목적지 포트로만 내보내는 것 )

(4) Filtering : 목적지 주소와 출발지 주소가 같은 세그먼트 상에 존재한다면, 즉 bridge를 건너가지 않고도 통신이 일어날 수 있다면, 나머지 모든 포트로 이 프렘이 건너가는 걸 막는 역할을 한다.
출발지의 MAC address와 목적지의 MAC address가 같은 port에 연결된 경우
(같은 콜리젼 도메인, 같은 segment, 같은 LAN... 모두 같은말입니다.) 브리지를 넘어가지 못하도록 막아줍니다.
( ※ 이 기능이 바로 위에서 설명한 콜리전 도메인을 나눈다는 말 )

(5) Aging : table에 MAC address를 언제까지나 저장해 놓을 수 없기 때문에 일정 시간이 지나면 table에서 지웁니다.(기본 300초)
*aging에 설정된 시간동안 해당 MAC address의 통신이 없으면 table에서 삭제
( ※ 이렇게 지워져도 새로운 MAC address  가 들어오면 (1) 번의 Learning 에서 다시 MAC address 를 저장한다 )

브리지의 처리방식
※ Store-and-forwarding
- 스위치나 브리지가 일단 들어오는 프레임을 전부 받아 들인 후, 처리를 시작하는 방식. 프레임을 모두 받아 들이고 나서,   제대로 들어왔는지, 에러가 없는지, 출발지 주소, 목적지 주소가 어디인지 파악해서 처리 해주는 방식. 이때 에러가 발견 되면 브리지나 스위치는 프레임을 버리고 재 전송을 요구하기 때문에 에러 복구능력이 뛰어나다는 장점이 있다.

--> 모든 프레임을 다 받고 나서야 분석하고 그 다음에 처리가 되기 때문에 당연히 처리 속도가 느릴 것

※ Cut-though
- 스위치가 들어오는 프레임의 목적지 주소만을 본 다음 바로 전송 처리를 시작하는 방식. Store-and-forwarding 보다 처리속도가 빠르다는 장점이 있지만, 프레임에 발생 했을지 모르는 에러를 찾아내기 어렵다는 단점이 있다.

--> 프레임 헤더만 보고 처리하기 때문에 처리속도는 빠르지만 FCS 를 이용한 CRC (Cyclic Redundancy Check) 를 하지 않기 때문에 중간에 데이터가 잘못 들어오는 경우에는 확인할 방법이 없다.

이렇게 되고 스위치(Switch) 는 브리지의 모든 기능을 가지고 있다.

요즘에는 스위치가 더 활발하게 사용되므로 머 브리지를 쓰는 곳은 별로 없을 듯.
웹에서 찾아보니 오히려 백본망에서 잘 사용된다고 하던데.

스위치도 여러가지로 나눠져서 L2 ( Layer 2 ) 스위치 와 L3 스위치, L4 스위치 등등
네트워크장비들도 단순히 어느 Layer 에 어느 장비가 속한다라고 말할 수 없게 되었다.




2009. 12. 18. 11:43

OSI 7 layer 설명

1. 물리계층 ( Physical layer )
물리 계층은 OSI 참조 모델 중 최하위 계층으로서 전송매체(무선, 유선, 광케이블 등)를 이용하여 시스템과 시스템간의 물리적인 접속을 제어하기 위한 기능을 제공하는 것을 목적으로 한다.

물 리계층은 DTE(Data Terminal Equipment : 데이터 단말장치)와 DCE(Data Circuit terminating Equipment : 데이터 회선종단장치) 간의 실제적인 연결을 설정하고, 유지 및 해지를 위한 기능적, 전기적, 절차적, 기계적 특성을 제공한다.

물리계층의 주요 기능으로는 다음과 같다.
(1) 기능적(functional) 특성 각 핀에서 사용되는 신호의 기능을 정의하며, 일반적으로 데이터 신호, 제어신호, 타이밍 신호, 접지신호 등으로 규정하고 있다.
(2) 전기적(electrical) 특성 신호의 전위 규격과 전위 변화의 타이밍(timing)에 관한 것으로서, 이러한 특성은 데이터 전송속도와 전송거리를 결정한다.
(3) 절차적 (procedural) 특성 기능적 특성에 의하여 데이터를 교환하기 위한 절차(동작의 순서)를 규정한다.
(4) 기계적(mechanical) 특성 상호접속을 위한 커넥터의 물리적 규격을 정의한다. 즉, 커넥터의 형태, 핀 수에 대한 규정으로는 EIA, ISO 표준 등이 있다.


2. 데이터 링크 계층 ( Data link layer )
데이터링크 계층은 물리계층으로부터 제공되는 서비스를 이용하여 두 장치간의 정보전송을 원활하게 수행하고, 에러검출과 에러정정 기능을 제공하는 역할을 한다.

데이터링크 계층의 주요 기능으로는 다음과 같다.
프레임 동기 : 데이터는 프레임이라는 블록 단위로 전송되며, 각 프레임의 시작과 끝을 구분하게 되어있다.
회선형태의 다양성 : 기기는 점대점, 다중연결 방식 등으로 접속 할 수 있다. 흐름제어 기능 : 블록방식으로 전송하고, 수신 확인하는 블록전송방식이다.
오류제어기능 : 전소잇스템에 의해서 유발되는 오류를 검출하여 정정한다.
링크관리기능 : 주소 및 제어정보가 전송되므로 회선의 감시관리와 통계적인 처리뿐만 아니라 회선의 설정, 단락 제어 등이 가능하다.

※ 데이터 링크계층에서 사용되는 프로토콜 방식은 문자동기(byte oriented) 방식과 비트동기(bit oriented) 방식이 있다.
① 문자동기방식 : 통신로상에서 전송되는 모든 프레임을 문자단위로 구성하는 방식이며, 대표적인 예로는 IBM에서 제안한 BASIC 방식이 있다.
② 비트동기방식 : 통신로상에서 전송되는 모든 프레임을 비트 단위로 구성하는 방식이며, 대표적인 예로는 HDLC 프로토콜이 있다.

3. 네트워크 계층 ( Network layer )
OSI 참조모델의 제 3계층인 네트워크 계층은 원격의 두 시스템 간에 존재하는 통신 서브넷을 경유하여 통신기능을 제공한다. 데이터 링크 계층은 컴퓨터 및 단말장치 등의 시스템이 하나 또는 여러 개의 통신망을 경유하여 목적지 시스템까지 데이터를 전달하기 위하여 각 통신망 내 혹은 통신망간의 경로선택 기능과 중계 기능을 제공한다.

※ 네트워크 서비스의 종류에는 연결형 네트워크와 비연결형 네트워크로 나뉜다.
연결형 네트워크의 대표적인 예로는 전화망구성에 사용되는 회선교환망으로써, 데이터를 전송할 때 양자간에 통신하기 위한 준비과정을 필요로 한다.
비 연결형 네트워크 서비스는 전보형태의 서비스로, 기본적으로 하나 하나의 데이터는 상호 관련없이 독립되어 있으며, 연결의 설정과 해지 과정이 사용되지 않는다. 비연결형 서비스의 대표적인 사용에는 패킷 교환망으로써, 서비스 기본요소로는 데이터 전송 서비스, 관리 기능 서비스가 있다.

4. 전송 계층 ( Transport layer )
전송 계층은 OSI 참조모델의 제 4계층으로서 하위계층을 이루고 있는 각종 통신망의 종류 및 서비스의 차이나 속성에 관계없이 균일한 데이터전송서비스를 세션 계층에 제공한다. 전송 계층에서는 상위 계층에 대하여 회선 품질이나 통신 서브 시스템의 물리적인 구성과 관계없이 종단 간의 신뢰성과 정확성을 가진 통신 선로를 제공하기 위하여 전송에러의 검출 및 재전송기능, 다중화 기능 등을 제공한다.

※ 전송 계층은 다음과 같은 기능을 가지고 있다.
다중화와 역다중화, 분류와 합류, 분할과 조립, 연결과 분리, 에러 검출, 회복 기능, 흐름 제어, 우선 데이터 전송 기능등을 가지고 있다.

5. 세션 계층 ( Session layer )
세션 계층은 OSI 참조모델의 제 5계층으로서 다양한 응용기능의 욕구를 충족시키기 위한 세션 제어기능을 상위계층에 제공한다. 세션 계층의 주요기능은 상위 응용실체간의 대화를 위한 동기를 맞추고, 순차적인 데이터 교환방법을 제공한다. 세션 계층의 목적은 데이터 송신권의 제어기능, 데이터 전송의 동기점을 부가하는 기능, 재전송기능 등을 제공함으로서, 데이터의 교환을 원활하게 하는 것이다.

※ 세션계층의 주요기능은 다음과 같다.
① 세션연결 및 해제 : 상위 표현계층의 실체들간의 통신을 위하여 세션을 연결하고, 데이터 전송서비스를 한 후, 세션을 해제하는 기능을 제공한다.
② 데이터 전송 서비스 : 데이터 전송 서비스로서, 토큰으로 제어되는 반이중 방식과 토큰으로 제어되지 않는 전이중 방식의 전송서비스를 제공한다.
③ 동기점 서비스 : 세션기간 동안에 대동기, 소동기, 재동기 서비스를 제공한다.
④ 예외보고 서비스 : 예외보고 서비스는 세션기간 동안에 예외적인 상황이 발생하면 이를 보고해주는 서비스를 제공하는 기능단위이다.
=> 토큰은 어떤 서비스의 실행을 기동하는 권리이다

6. 표현 계층 ( Presentation layer )
표현 계층은 OSI 참조모델의 제 6계층으로서, 상위계층인 응용계층이 교환하는 정보에 대하여 범용적인 부호화에 관한 서비스를 제공한다. 표현계층의 서비스는 두 가지의 메시지 형식으로 사용된다.
① 전송 구문 : 부호화된 메시지를 의미한다.
② 추상 구문 : 응용계층에서 부호화를 의식하지 않고 교환하는 정보의 표현형식을 의미한다.

※ 표현 계층의 주요 역할은 다음과 같다.
정보의 압축/복원, 채널 상에서 발생되는 오류를 제어하기 위한 부호화/복호화 정보보호를 위한 암호화/복호화 및 인증 방식에 관한 사항

7. 응용 계층 ( Application layer )
응용계층은 OSI 참조모델의 최상위 계층인 제 7계층으로서, 사용자와 직접 연결되는 부분이다. 따라서 사용자는 응용 계층 이하의 하위 계층의 서비스를 사용하지만, 이들 서비스와 기능에 대해서는 투명하게 사용할 수 있어야 한다.
응용 계층의 실체에는 응용 프로그램의 사용자와의 접속을 위한 사용자 실체(UE : User Entity)와 응용계층의 응용서비스와의 접속을 위한 응용 실체(AE : Application Entity)가 존재한다.