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

컴퓨터 네트워크 31장 - 표현 계층 -

by ChocoPeanut 2017. 5. 5.

컴퓨터 네트워크 31

- 표현 계층 -

 

표현 계층응용 프로세스 사이에 전송되는 메시지의 표현 방법을 다룬다. 전송 메시지에 표현된 문법 내용을 통신 양단의 프로세스가 해석하는 기능을 수행한다. 송신 프로세스가 전달하는 의미를 수신 프로세스가 정확히 이해하도록 하는 것이다.


데이터가 표현 될 때 추상 문법전송 문법이 있다. 추상 문법은 각 컴퓨터에서 사용하는 데이터 표현 규칙이다. 전송 문법은 네트워크 전체에서 일관성을 지니는 표현 규칙이다. 특정 컴퓨터에 독립적이면서 네트워크 전체에서 일관성을 가지는 새로운 표현 규칙인 전송 문법을 이용하여 전송해야한다. 각 컴퓨터는 각기 다른 추상 문법을 가지고 있기 때문이다. 수신 측에서는 자신의 컴퓨터에서 이해하는 추상 문법의 형태로 다시 변환하는 과정도 필요하다.



ASN.1분산 환경에서 표현되는 데이터를 정의하기 위한 일반적인 추상 문법이다. ASN.1은 응용 환경에서 폭넓게 사용된다. 다양한 언어용 코드를 생성하는 컴파일러도 존재한다. ASN.1은 기본 목적은 변수 선언과 관련된 데이터형의 정의인데, 일반 프로그래밍 언어에서 사용하는 방식과 비슷한 문법 형식을 지원한다. ASN.14가지의 클래스를 지원하는데 일반 데이터 유형인 UNIVERSAL, 특정 컨텍스트와 관련된 유형인 CONTEXT-SPECIFIC, 응용 개체의 공통 유형인 APPLICATION, 사용자 정의 유형인 PRIVATE이다.


UNIVERSAL 클래스는 일반 데이터 유형을 정의하는데 기본 유형과 구조 유형으로 구분된다. 기본 유형은 단위형과 연속형으로 다시 나눌 수 있다. 단위형은 INTEGER이나 BOOLEANfh 구성되어 있고 연속형은 단위형의 연속적인 배열을 의미하는 것으로 SEQUENCESET등으로 구성되어 있다. 구조형에 선언된 변수를 개별적으로 사용하기 위해 태깅/태그 기능을 지원한다. 태그는 배열의 인덱스와 유사한 기능을 수행한다고 볼 수 있다.


세션 계층은 데이터의 압축보안에 대한 기능도 수행을 한다. 압축은 전송 데이터의 양을 줄이는 목적으로 사용하고 암호화는 전송 데이터의 내용을 해석하지 못하도록 하기 위해 사용한다.


대용량 데이터를 압축하여 크기를 줄인 후 전송하는 것이 전송 속도 면에서 유리하다. 그래서 세션 계층은 압축의 기능을 수행한다. 압축은 원래 데이터의 패턴에 영향을 많이 받는다. 중복이 많으면 압축률이 높아지게 된다. 압축된 데이터의 내용에는 중복 정보가 더 이상 없다고 보아야 하기 때문이다. 알고리즘에 따라서도 압축률이 많이 다르게 된다. 데이터 특성에 맞는 알고리즘을 선택하는 것이 중요하다. 연속된 문자를 압축할 때 압축 알고리즘으로 특정 문자가 연속해서 몇 번 나타나는지를 표현하여 압축을 하는 방식을 취하게 된다. 동일 패턴이 반복되는 환경에서 유리하지만 반복이 거의 없는 환경에서는 오히려 데이터가 커질 수 있다.


압축 데이터에서 원본 데이터를 얻는 과정을 압축 해제라고 한다. 여기서 데이터 압축을 두 종류로 나눌 수 있는데 압축 해제를 할 때 데이터의 손실이 있고 없고를 기준으로 손실 압축비손실 압축으로 나눌 수 있다. 손실 압축은 압축 과정에서 원래 데이터의 내용을 부분적으로 분실하는 경우를 말한다. 화상 정보나 음성 정보들을 사용자의 환경에 따라 손실 범위를 조절하여 데이터의 손실을 허용한다. 이 방법을 압축의 효율을 높일 수 있다. 비손실 압축은 압축 과정에서 원래 데이터의 내용을 분실하지 않는 방법이다. 압축 해제를 할 경우 100%의 원래 데이터를 복원할 수 있다.





출처 - 데이터 통신과 컴퓨터 네트워크