본문 바로가기
컴퓨터 네트워크

컴퓨터 네트워크 15장 - 토큰 버스 및 토큰 링 -

by ChocoPeanut 2017. 4. 20.

컴퓨터 네트워크 15

- 토큰 버스 및 토큰 링 -

 

토큰 버스

LLC 계층에서 내려온 LLC 프레임을 물리 계층을 통해 수신 호스트에 전달하려면 토큰 버스 프로토콜에서 정의한 프레임에 맞게 토큰 버스 프레임을 만들어야 한다. 토큰 버스의 프레임 구조는 MAC 헤더(토큰 버스 헤더)LLC 프레임(토큰 버스 데이터), MAC 트레일러(토큰 버스 트레일러)로 구성되어 있다. 토큰 버스 프레임 구조는 앞 장에서 소개한 CSMA/CD 프레임 구조와 거의 비슷하나 데이터 프레임과 토큰 프레임을 구분하기 위한 프레임 제어가 포함되어 있다




MAC 헤더를 구성하는 요소로는 수신 호스트가 송신 호스트의 클록 동기를 맞추기 위한 용도인 프리엠블(Preamble)이 먼저 나온다. 음으로는 프레임의 시작 위치를 구분시켜주는 시작 구분자(Start Delimiter), 데이터 프레임과 제어 프레임을 구분시켜주는 프레임 제어(Frame Control) 이 나온다. 다음으로 수신 호스트의 MAC 주소(Destination Address)와 송신 호스트의 MAC 주소(Destination Address)가 나온다. LLC 프레임은 LLC 계층으로부터 만들어진 Data이다. MAC 트레일러는 체크섬(Checksum)으로 데이터 변형 오류를 감지해주는 부분과 끝 구분자(End Delimiter)로 프레임의 끝 위치를 구분해주는 부분으로 구성된다.


프레임 제어1바이트 가지는 필드인데 앞의 두 비트는 TT를 가진다. TT 부분이 00으로 구성되어 있으면 제어용 MAC 프레임이라는 말로 토큰 프레임을 의미하고 01일 경우는 LLC 프레임을 10일 경우 네트워크 관리용 데이터 프레임, 11일 경우는 예약이 되어 있는 상태를 의미한다. 나머지 6비트를 C로 표현하여 기능을 설명시켜준다. C6비트가 001000이면 이 프레임이 토큰 프레임인 것임을 인지 시켜준다.


 

토큰 링

토큰 링 구조에서는 점대점으로 연결한 호스트가 순환 구조 형태로 LAN을 구성한다. 토큰이라 불리는 제어 프레임이 일정한 방향으로 순환하여 데이터 프레임을 전송할 수 있는 권한을 가질 수 있게 하는 구조이다. 토큰 링 프레임은 데이터 프레임과 토큰 프레임으로 구분할 수 있다. 토큰 프레임의 경우 SD, AC, ED의 세 필드로 구성되어 있다. SD는 시작 구분자(Start Delimiter)이고 AC는 접근 제어(Access Control), ED는 끝 구분자(End Delimiter)를 의미한다.



데이터 프레임의 경우에는 SD(시작 구분자), AD(접근 제어), FC(프레임 제어), 수신 호스트 주소, 송신 호스트 주소로 MAC의 헤더를 구성하고 LLC 프레임으로 데이터를 구성한다. 트레일러 부분으로는 체크섬과 ED(끝 구분자), FS(프레임 상태)로 구성을 한다. 토큰 버스와 구분해서 FS라는 프레임 상태(Frame Status)에 대한 값이 추가되었다.

SDED는 프레임의 시작과 끝을 구분하는 역할을 한다. 접근 제어의 경우에는 P비트, T비트, M비트, R비트로 구성된다. P비트의 경우 우선순위에 대한 값을 담고 있고 T 비트의 경우에는 1비트를 담당하는데 토큰 프레임(T=0)과 일반 프레임(T=1)을 구분해주는 역할을 한다. M비트의 경우도 1비트를 담다하는데 모니터 호스트가 사용되는지를 알려주는 역할을 한다. 모니터 호스트를 지날 때 M1로 지정한다. R비트의 경우는 사용하지 않고 예약을 위한 공간으로 남겨진 부분이다. 모니터 호스트는 링에 연결된 호스트 중에서 특별 임무를 부여받은 관리 호스트이다. 토큰 생성 기능과 데이터의 무한 순환 방지 기능을 수행한다. 토큰이 분실될 경우 모니터 호스트가 이를 감지하여 토큰을 재생성하고 송신 호스트가 전송 데이터를 회수하지 않을 경우 전송 데이터를 회수한 후 토큰을 만들어 준다.



프레임 제어는 토큰 버스와 같게 TT의 형태로 동작한다프레임 상태 부분은 프레임의 수신 호스트가 송신 호스트에게 응답하는 기능을 수행한다. A 비트와 C 비트가 존재하는데 A 비트는 수신 호스트가 접근했다는 표시로 1을 지정하고 C 비트는 수신 호스트가 자신의 내부 버퍼에 보관 했다는 표시로 1을 지정한다.