[통신]

HDLC - S 프레임(supervisory frame)

Neo Park 2012. 12. 10. 12:02

 

I-frame에 제어정보를 실어 piggybacking을 하는 것이 불가능하거나 부적절할 때(지국이 송신하려는 자체 데이터가 없을 때, 또는 확인응답이 아닌 명령이나 명령에 대한 응답을 보낼 필요가 있을 때) S-프레임이 확인응답 및 흐름제어와 오류제어를 위해 사용된다. S-프레임에는 정보 필드가 없으나 각 프레임이 메시지를 수신기로 전달하며 이 메시지들은 S-프레임의 종류와 전송환경에 따라 다르다. 각 S-프레임의 종류는 제어 필드의 P/F 비트 바로 앞에 있는 2비트 부호에 의하여 결정된다. S-프레임은 수신가능(RR), 수신불가(RNR), 거부(REJ)와 선택적 거부(SREJ)의 네 종류가 있다.

 

HDLC 통신에 있어 S-프레임 code중 RR과 RNR이 유용하게 쓰이므로 이 두가지에 대해 설명해 보면 다음과 같다.

 

 

RR(Recieve Ready)

부호(00)를 가진 S-프레임은 다음과 같이 서로 다른 의미를 가진 네 가지 가능한 목적으로 사용될 수 있다

  • 확인응답
    RR은 수신국이 I-프레임의 수신에 따른 긍정적인 확인응답(positive acknowledgment)을 보내기를 운하나 수신기에서 보낼 자체 데이터가 없을 때 사용한다. 이 경우 제어필드의 N(R) 필드는 수신기가 다음으로 받고자 하는 프레임의 시퀀스 번호(sequence number)를 가진다. N(R) 필드는 한 비트에서 세 비트까지로 구성될 수 있으며 세 비트인 경우 S-프레임은 8프레임까지 확인응답을 할 수 있다.
  • 폴(Poll)
    주국에서 P/F 비트를 1로 하여 S-프레임을 전송할 때, RR이 종국에게 송신할 것이 있는가를 문의하는 기능이다.
  • 폴에 대한 부정적 응답
    P/F 비트를 1로 하여 종국에서 보내질 때, RR은 종국에서 보낼 것이 아무것도 없다는 것을 주국에게 알려 주는 역할을 한다. 만약 종국이 송신할 데이터가 있는 경우에는 폴에 대하여 S-프레임이 아닌 I-프레임으로 응답하면 된다.
  • 선택에 대한 긍정적 응답
    종국이 주국으로부터 전송받을 수 있으면 P/F 비트(F로 사용)를 1로 하여 RR 프레임을 주국에게 보낸다.

 

RNR(Recieve Not Ready)

다음의 세가지 목적으로 사용될 수 있다.

  • 확인응답
    수신기로부터 송신지국으로 전달된 RNR 프레임은 N(R) 필드에 표시된 프레임을 제외한 지금까지 받은 모든 프레임에 대한 확인응답의 역할을 하며, RR 프레임을 받기 전에 프레임을 더 이상 송신하지 않도록 요청하는 역할을 한다.
  • 선택
    주국이 특정한 종국에 대해 데이터 전송을 원할 때, 주국은 P/F 비트(P로서 사용)를 1로 만든 RNR 프레임을 종국에 보내서 알려준다. 이 RNR 부호는, 그 프레임이 선택(select)이며 폴(poll)이 아니므로, 종국 자체 데이터를 송신하지 않아야 한다는 사실을 종국에게 알려준다.
  • 선택에 대한 부정적 응답
    선택된 종국이 데이터를 수신할 수