* MAC 계층과 LLC 계층

- MAC 계층
LAN 종류에 따라 특성이 구분된다.
1) 이더넷
> 공유 버스 구조를 지원하며, 충돌 현상이 발생한다.
> 충돌 감지 기능이 필요하다.
> 충돌 현상 발생시 호스트는 이를 감지하고, 일정 시점이 지난 후에 재전송해야 한다.
2) 토큰링
> 토큰을 사용해서 데이터 전송 시점을 제어하므로 충돌 발생이 불가능하다.

- LLC 계층
LAN 환경의 데이터 링크 계층 기능을 수행한다.
LAN 종류에 따라 MAC 계층의 설계 형태가 영향을 받는 것처럼, LLC 계층도 LAN 특성에 부분적으로 영향을 받을 수 있다.
이더넷에서 사용하는 LLC와 토큰링에서 사용하는 LLC는 약간 다를 수 있다.

* IEEE 802 시리즈


1) CSMA/CD

MA( Multiple Access ) - 다수 호스트가 하나의 공유 매체에 연결됨

CS( Carrier Sense ) - 호스트는 공유 메체의 사용 가능 여부를 신호 감지로 확인

CD( Collision Detection ) - 공유 매체에서 데이터 충돌 여부를 확인


충돌 감지 기능이 필수적으로 요구된다.

충돌 감지 후, 재전송 기능으로 오류 복구한다.

공유 매체의 길이가 길수록 전송지연이 증가하여 충돌 가능성이 높아진다.


2) 토큰 버스

물리적으로 버스 구조

논리적으로 토큰링 구조

데이터를 전송하기 위해서는 반드시 토큰을 확보해야 한다.


3) 토큰 링

물리적으로 토큰링 구조

- 대기모드

입력단으로 들어온 데이터를 바로 출력단으로 보낸다.

호스트가 다운되거나 기타 장애가 발생해도 네트워크에 영향을 주지 않기 위함이다.


- 전송모드

토큰을 확보해 데이터를 전송할 수 있는 권한을 보유한 상태를 말한다.

호스트가 중개 기능을 수행하며, 출력단을 통해 데이터를 전송할 수 있다.


* 이더넷( Ethernet )

1) 1-persistent CDMA

프레임을 전송하기 전에 채널 사용 여부를 확인한다.

채널이 사용중이면 유휴 상태가 될 때까지 대기한다.

이후, 채널이 유휴 상태가 되면 확률 1의 조건으로 프레임을 전송한다.

둘 이상의 호스트에서 동시에 유휴 상태로 판단하면 충돌이 발생한다.

충돌이 발생하면 임의의 시간 동안 대기한 후 채널 사용 여부부터 다시 시작한다.


2) Non-persistent CSMA

프레임을 전송하기 전에 채널 사용 여부를 확인한다.

채널이 사용중이면 더 이상 유휴 상태를 확인하지 않는다.

대신 임의의 시간 동안 대기 후 다시 채널 감지를 시작한다.

1-persistent CSMA 방식보다 충돌 확률을 줄일 수 있다.


3) P-persistent CSMA

슬롯 채널 방식에서 주로 사용한다.

프레임을 전송하기 전에 채널 사용 여부를 확인한다

채널이 사용 중이면 다음 슬롯까지 대기 후 다시 채널 감지를 시작한다.

채널이 유휴 상태면 p의 확률로 프레임을 전송한다.


* 프레임

MAC 프레임 - MAC 헤더 + LLC 프레임 + MAC 트레일러

LLC 프레임 - LLC 계층이 MAC 계층에게 전송하도록 요청한 데이터

- 프레임 구조

preamble : 수신 호스트가 송신 호스트의 클록 동기를 맞추는 용도

Start Delimiter : 프레임의 시작 위치 구분

Source Address : 송신 호스트의 MAC 주소

Destination Address : 수신 호스트의 MAC 주소

Length : Data 필드에 포함된 가변 길이의 전송 데이터 크기

Checksum : 데이터 변형 오류를 감지하는 기능


1) 문자 프레임

프레임의 내용이 문자로만 구성된다.

전송 데이터에 특수 문자가 포함되면 혼선이 발생한다.

- 문자 스터핑 : 문자 프레임의 전송 데이터 중 DLE 문자가 포함되면서 발생하는 혼란을 예방하는 방법이다.


2) 비트 프레임

프레임의 시작과 끝을 구분하기 위하여 플래그 (01111110)를 사용한다.

- 비트 스터핑 : 송신 호스트가 전송하고자 하는 데이터 내용 중에 값이 1인 패턴이 연속해서 5번 발생하면 강제로 0을 추가해 전송한다.


* 오류 검출

1) 단일-비트 오류( Single-bit Error )

데이터 단위 중 하나의 비트만 변경된 오류를 말한다.


2) 다중-비트 오류( Multiple-bit Error )

데이터 단위 중 두 개 이상의 비연속적인 비트가 변경된 오류를 말한다.


3) 집단 오류( Burst Error )

데이터 단위 중 두 개 또는 그 이상의 연속적인 비트가 변경된 오류를 말한다.


4) 패리티 비트 검사

전송 과정에서 홀수개의 비트가 깨지면 오류 검출이 가능하다.

즉, 짝수개의 비트가 깨지면 오류 검출이 불가능함을 의미한다.

전송하는 데이터마다 패리티 비트를 하나씩 추가하여 홀수 또는 짝수 검사 방법으로 오류를 검출한다.

- 홀수 패리티 방식

전체 비트에서 1의 개수가 홀수가 되도록 패리티 비트를 정하는 것


- 짝수 패리티 방식

전체 비트에서 1의 개수가 짝수가 되도록 패리티 비트를 정하는 것을 말한다.


5) 블록합검사


문자를 블록으로 전송하면 오류 확률이 높아지는데, 오류 검출 능력을 향상시키려고 문자 블록에 수평 패리티와 수직 패리티를 2차원적으로 검사하는 방법이다.

행 단위 패리티에 열 단위의 오류 검사를 수행할 수 있는 열 패리티 문자를 추가하여 이중으로 오류 검출 작업을 수행한다.


6) 순환 중복 검사( CRC, Cyclic Redundancy Check )

정확하게 오류를 검출하려고 다항식 코드를 사용하는 방법이다.

오류가 없을 때는 계속 발생하지 않다가 오류가 발생하면 그 주위에 집중적으로 오류를 발생시키는 집단 오류를 검출하는 능력이 탁월하고 구현이 단순하다.


* 프로토콜의 기초

1) 프레임의 종류

- 정보 프레임 ( I )

상위 계층이 전송 요구한 데이터를 송신하는 용도

순서번호, 송수신 호스트 정보 등이 포함된다.

- 긍정 응답 프레임 ( ACK )

전송 데이터가 올바르게 도착했음을 회신하는 용도

데이터를 수신한 호스트가 데이터를 송신한 호스트에게 전송한다.

- 부정 응답 프레임 ( NAK )

전송 데이터가 깨져서 도착했음을 회신하는 용도

데이터를 수신한 호스트가 데이터를 송신한 호스트에게 전송한다.

데이터를 송신한 호스트는 원래의 데이터를 재전송하여 오류를 복구한다.


* 슬라이딩 윈도우 프로토콜

양방향 통신을 지원한다.

오류 제어와 흐름 제어 기능을 모두 지원한다.

- 기본절차

송신 호스트는 정보 프레임을 순서 번호에 따라 순차적으로 전송한다.

정보 프레임을 수신한 수신 호스트가 응답하는 순서 번호는 정상적으로 수신한 번호가 아닌 다음에 수신하기를 기대하는 번호를 회신하는 것이 일반적이다.

송신 호스트가 관리하는 송신 윈도우는 긍정 응답이 회신되지 않은 프레임을 보관한다.

- 흐름제어

1) 순서번호

프레임 별로 부여되는 일련 번호

0 부터 임의의 최댓값까지 순환 방식으로 사용한다.

일반적으로 순서 번호의 최댓값이 송신 윈도우 크기보다 커야 한다.

프레임에서 순서번호의 공간 크기 = 0 ~ 2ⁿ-1


2) 윈도우 크기

긍정 응답 프레임을 받지 않고 연속으로 전송할 수 있는 프레임의 최대 개수


- 피기배킹

정보 프레임이 응답 프레임의 기능까지 수행한다.

정보 프레임 = 정보 프레임 + 응답 프레임

2개의 순서 번호 - 전송 데이터용 순서 번호, 응답용 순서 번호


'NCS보안3기 > 네트워크' 카테고리의 다른 글

[Network] 네트워크 보안  (0) 2017.04.06
[Network] TCP/IP 모델  (2) 2017.04.06
[Network] 네트워크 기술  (0) 2017.04.05
[Network] 네트워크 모델  (0) 2017.04.04
[Network] 네트워크 통신  (0) 2017.04.04
Posted by Imp3rio

* 교환 시스템

네트워크 양단에 연결된 호스트들이 전송하는 패킷은 전송과정에서 전송 경로 중간에 위치한 교환 시스템을 거친다.

교환 시스템은 데이터를 최종 목적지까지 올바르게 전달하도록 데이터를 중개하는 교환기능을 제공한다.


* 회선 교환

연결형 서비스를 제공한다.

음성전화 서비스에서 발전했다.

고정 대역이 할당된 연결을 설정한 후에 데이터 전송 시작한다.

연결회선에 할당된 고정 크기의 안정적인 전송률로 데이터를 전송 가능하다.

연결이 유지되는 동안에는 다른 연결에서 이 대역을 사용할 수 없다.

데이터 전송 경로가 연결 설정 과정에서 고정되므로 라우팅 등의 작업이 쉽다.


* 패킷 교환

비연결형 서비스를 제공한다.

컴퓨터 네트워크에서 발전했다.

데이터 전송을 위한 전용 대역을 따로 하지 않기 때문에 가변 크기의 전송률을 지원한다.

가상 회선 방식 - 모든 패킷의 경로를 일정하게 유지하는 방식

데이터그램 방식 - 패킷들을 각각의 경로로 전송하는 방식


* 교환 시스템의 종류

- 전용 회선 방식 : 송수신자 사이에 전용 전송 선로를 사용한다.

- 교환 회선 방식 : 전송 선로를 다수의 사용자가 공유한다.

- 회선 교환 : 데이터 전송 전에 양단 사이의 연결을 설정한다.

- 패킷 교환 : 연결을 설정하지 않고 패킷 단위로 데이터를 전송한다.




* 회선 교환

통신하고자 하는 호스트가 데이터를 데이터를 전송하기 전에 연결 경로를 먼저 설정한다.

연결 설정 과정에서 송수신 호스트 간의 경로가 결정되기 때문에 데이터가 모두 같은 경로로 전달된다.

고정 대역의 논리적 전송 선로를 전용으로 할당받으므로 안정적인 데이터 전송률을 지원한다.


* 메시지 교환

전송하는 메시지의 헤더에 목적지의 주소를 표시하는 방식이다.

데이터 전송 전에 경로를 미리 설정할 필요가 없다.

전체 데이터를 하나의 단위로 교환 처리한다.

이전 교환 시스템의 전체 데이터가 도착한 후 다음 교환 시스템으로 중개한다.


- 장점

교환 시스템에서 전송 데이터를 저장하는 기능을 제공하기 때문에 송신 호스트가 보낸 시점과 수신 호스트가 받은 시점이 반드시 일치할 필요가 없다


* 패킷 교환

전송 데이터를 고정 크기의 패킷으로 나누어 전송한다.


- 장점

전송 대역의 효율적 이용

: 여러 호스트에서 전송한 패킷이 전송 대역을 동적인 방식으로 공유하기 때문에 전송 선로의 > 이용 효율을 극대화할 수 있다.


호스트의 무제한 수용

> 전송 대역이 부족하여 연결 설정 요청을 허용하지 않는 현상이 발생하지 않는다.

> 연결 요청에 고정 대역을 할당하지 않기 때문에 이론상 호스트를 무한히 수용할 수 있다.


패킷에 우선 순위를 부여할 수 있다.


지터 - 패킷의 도착 지연 시간이 가변적이며, 각 패킷들의 지연 시간 분포를 의미한다.

정적 경로 - 호스트 사이의 전송 경로를 미리 고정한다.

동적 경로 - 네트워크 혼잡도를 비롯한 주변 상황에 따라 전송 경로를 조정한다.


- 가상회선( Virtual Circuit )

연결형 서비스를 지원하기 위한 기능이다.

하나의 연결을 통해 전송되는 패킷의 경로는 동일하다.

패킷을 전송하는 원리는 회선 교환 방식과 비슷하다.

회선 교환 방식은 패킷 기능을 지원하지 않는 것이 중요한 차이점이다.



- 데이터그램

비연결형 서비스를 이용해 패킷을 독립적으로 전송한다.

패킷이 전달되기 전에 연결을 설정하는 과정이 없으므로 경로를 미리 할당하지 않는다.

전송되는 패킷들이 독립 경로로 전달된다.

전송할 정보의 양이 적거나 상대적으로 신뢰성이 중요하지 않은 환경에서 사용한다.



'NCS보안3기 > 네트워크' 카테고리의 다른 글

[Network] TCP/IP 모델  (2) 2017.04.06
[Network] MAC 계층과 데이터링크 계층  (0) 2017.04.05
[Network] 네트워크 모델  (0) 2017.04.04
[Network] 네트워크 통신  (0) 2017.04.04
[Network] 네트워크 기초  (0) 2017.04.03
Posted by Imp3rio

1. 계층 구조의 개념

* 모듈화

크고 복잡한 시스템을 기능별로 여러 개의 작고 단순한 모듈로 독립화

모듈 사이의 적절한 인터페이스가 필요하다.

* 계층 구조

상위 모듈이 하위 모듈에게 서비스를 요청

하위 모듈은 서비스를 실행하고 그 결과를 상위 모듈에 통보


- 장점

> 전체 시스템을 이해하기 쉽고, 설계 및 구현이 용이하다.

> 모듈간의 인터페이스가 단순하면 모듈의 독립성을 향상시킬 수 있으며, 이는 시스템 구조를 단순화시키는 장점이 된다.

> 대칭 구조에서는 동일 계층 사이의 인터페이스인 프로토콜을 단순화시킬 수 있다.

> 특정 모듈의 외부 인터페이스가 변하지 않으면 내부 기능의 변화가 전체 시스템의 동작에 영향을 미치지 않는다.


* 프로토콜 설계 시 고려 사항

1) 주소 표현

주소의 활용도를 높이기 위하여 구조적 정보를 포함한다.


2) 오류제어

데이터 변형 오류 - 데이터가 깨져서 수신자에게 도착함

데이터 분실 오류 - 데이터가 수신자에게 도착하지 못함

오류제어는 데이터 링크 계층의 주요 기능으로 재전송 방식을 사용한다.


3) 흐름제어

수신자의 처리 능력에 비해 너무 빨리 데이터를 전송하지 못하도록 제어한다.

수신 버퍼가 부족하면 수신자는 데이터를 분실처리한다.


4) 데이터 전달 방식

단방향 - 데이터를 한쪽 방향으로만 전송

전이중 - 데이터를 양쪽에서 동시에 전송

반이중 - 양방향으로 전송할 수 있지만, 특정 시점에서는 한쪽 방향으로만 전송


* OSI 참조 모델


1) 용어정의

계층n 프로토콜 - 계층 n 모듈끼리 사용하는 통신 규칙

동료 프로세스 - 동일 계층에 위치한 통신 양단 프로세스

인터페이스 - 상하위 계층 사이의 접속 방법

서비스 - 상위 계층이 하위 계층을 사용하는 방법


2) 중개 기능


3) 계층별 기능

- 물리 계층

데이터 전송 속도, 클록 동기화 방법, 물리적 연결 형태 등

- 데이터 링크 계층

물리 계층의 물리적 전송 오류 문제를 해결

프레임 - 전송 데이터의 명칭

- 네트워크 계층

데이터의 전송 경로를 결정

호스트 구분을 위한 주소 개념 필요 ( IP 주소 )

패킷 - 전송 데이터의 명칭

혼잡 제어 - 데이터 전송 경로의 선택에 따라 네트워크 혼잡에 영향을 미친다.

- 전송 계층

송수신 프로세스 사이의 단대단( peer to peer ) 통신 기능을 지원한다.

프로세스 구분을 위한 주소 개념 필요 ( PORT 번호 )

- 세션 계층

송수신자 사이에 상위적 연결 개념인 세션을 지원한다.

- 표현 계층

데이터의 의미와 표현 방법을 처리한다

암호화/압축 기능도 처리한다.

- 응용 계층

FTP, Telnet, 전자메일 등


* OSI 참조 모델의 데이터 전송

데이터는 응용 계층에서 하위 계층으로 순차적으로 전송된다.

물리 계층과 응용 계층을 제외한 나머지 계층에서는 데이터의 시작부분과 끝부분에 헤더나 트레일러 형태로 정보를 추가한다.


실제 네트워크 프로토콜은 OSI 참조 모델의 7계층을 모두 사용하지 않고, 처음 세 계층만 사용한다.


* OSI 참조 모델 7계층

계층 7개는 서로 독립적이므로 어느 한 계층의 변경이 다른 계층에는 영향을 미치지 않는다.

기능에 필요한 몇 개의 계층만 표준화하면 정상적으로 통신할 수 있다.


1) 물리계층

두 시스템 간에 데이터를 전송하려고 링크를 활성화하고 관리하는 전기적・기계적・절차적・기능적 특성 등을 정의한다.

허브, 라우터, 네트워크 카드, 케이블 등 전송매체를 통해 비트를 전송한다.

상위 계층에서 전송된 데이터를 물리 매체를 통해 다른 시스템에 전기적 신호로 전송한다.


2) 데이터 링크 계층

물리적 링크를 이용하여 신뢰성 있는 데이터를 전송하는 계층으로, 네트워크를 통해 데이터를 전송할 때 전송로 역할을 한다.

데이터 링크 계층에서는 비트를 프레임이라는 논리적 단위로 구성하는데, 전송하려는 데이터에 인접한 노드의 주소( MAC 주소 )가 더해진다.

시스템 간에 오류 없이 데이터를 전송하려고 네트워크 계층에서 받은 데이터 단위를 프레임으로 구

성하여 물리 계층으로 전송한다.


3) 네트워크 계층

상위 계층에 연결하는 데 필요한 데이터 전송과 경로선택 기능을 제공하고, 라우팅 프로토콜을 사용하여 최적의 경로를 선택한다.

데이터를 패킷 단위로 분할하여 전송한 후 재결합한다.

전송 개체 사이에 안정적으로 전송할 수 있도록 서비스를 제공한다.


4) 전송 계층

프로토콜과 관련된 계층으로 오류 복구와 흐름 제어 등을 담당하며, 두 시스템 간에 신뢰성 있는 데이터를 전송한다.

네트워크 계층에서 온 데이터를 세션 계층의 어느 어플리케이션에 보낼 것인지 판독하고, 네트워크 계층으로 전송할 경로를 선택한다.


5) 세션 계층

응용 프로그램 계층 간의 통신을 제어하는 구조를 제공하려고 응용 프로그램 계층 사이의 접속을 설정・유지・종료시켜주는 역할을 한다.

사용자와 전송 계층 간의 인터페이스 역할을 하며, LAN 사용자가 서버에 접속할 때 이를 관리하는 기능도 수행한다.

데이터의 단위를 전송 계층으로 전송할 순서를 결정하고, 데이터를 점검 및 복구하는 동기 위치를 제공한다.


6) 표현 계층

데이터 표현 차이를 해결하려고 서로 다른 형식으로 변환하거나 공통 형식을 제공하는 계층이다.

송신측에서는 수신측에 맞는 형태로 변환하고, 수신측에서는 응용 계층에 맞는 형태로 변환한다.

송신측과 수신측 사이에서 표준화된 데이터 형식을 규정한다.


7) 응용 계층

파일 전송, 데이터베이스, 원격 접속, 이메일 전송 등 응용 서비스를 네트워크에 접속시키는 역할을 하며, 여러 가지 서비스를 제공한다.

사용자에게 정보를 입력받아 하위 계층으로 전달하고, 하위 계층에서 전송한 데이터를 사용자에게 전달한다.


* 인터넷 모델( TCP/IP 모델 )

1) 응용 계층


2) 전송계층

- TCP

송신지에서 수신지까지 문자 스트림을 전송하는데, 두 응용 계층이 서로 대화하는 것을 허용하는 신뢰성 있는 프로토콜이다.

- UDP

OSI 참조 모델에서 정의하는 전송 계층의 일부 역할을 무시하는 단순한 전송 프로토콜이다.

흐름 제어 및 오류 검출 등의 기능이 없어 패킷을 빠르게 전송할 수 있다.


3) 인터넷 계층 ( Network )


- ICMP( Internet Control Message Protocol )

IP 패킷을 처리함에 있어 발생되는 문제를 알리거나, 진단 등과 같이 IP 계층에서 필요한 기타 기능을 수행한다.

IP 프로토콜에 캡슐화되어 전송된다.


- IGMP ( Internet Group Message Protocol )

서브넷 ( 로컬 네트워크 )에서 그룹관리를 위한 프로토콜이다.


- ARP( Address Resolution Protocol )

논리적인 IP 주소를 물리적인 MAC 주소로 변환하는 프로토콜이다.


- RARP ( Reverse Address Resolution Protocol )

물리적인 MAC 주소를 논리적인 IP 주소로 변환하는 프로토콜이다.


- IP ( Internet Protocol )

데이터 그램이라는 패킷을 만들고 수신지에 해당 패킷을 전송한다.


4) 네트워크 접속 계층


인터넷 모델은 대부분 하나의 네트워크나 다른 네트워크의 송신지에서 수신지까지 데이터를 주고 받는데, 물리 계층과 데이터 링크 계층에서 하는 일은 LAN과 WAN을 연결하여 인터넷을 구성하는 것이다.


* 프로토콜


* 계층별 사용장비

1) 물리계층

- 리피터

cable 전송으로 약화된 신호를 초기화, 증폭, 재전송의 기능을 수행한다.

리피터와 허브는 상위 계층에서 사용하는 MAC 주소나 IP주소를 이해하지 못하고 단지 전기 신호만을 증폭시키는 역할을 한다.


- 허브

리피터와 마찬가지로 전기적 신호를 증폭시킨다.

LAN 전송거리를 연장시키고 여러 대의 장비를 LAN에 접속할 수 있도록 한다.


2) 데이터 링크 계층

- LLC( Logical Link Control )

Data Link의 부 계층 중 하나로 물리적 매체 상에서 흐름제어와 에러제어 등의 트래픽을 관리한다.

두 장비간에 link를 설정하고 Frame을 송수신하는 방식과 상위 계층 프로토콜의 종류를 알리는 역할을 한다.

- MAC( Media Access Control )

Frame의 포맷, Ethernet 동작 방식, 충돌감지 및 재전송 방식 등을 정의한다.


- 브리지

단순히 전기적 신호만을 증폭시키는 것이 아니라 Frame을 다시 만들어서 전송한다.

MAC 주소를 보고 Frame 전송 포트를 결정한다.


- 스위치

MAC 주소와 해당 장비의 포트번호가 기록된 MAC address table을 보고 목적지에게만 Frame을 전송한다.

한 포트에서 전송되는 Frame이 MAC address table에 있는 특정 포트로만 전송하기 때문에 다른 포트가 전송하는 Frame과 충돌이 발생하지 않는다.


3) 네트워크 계층

- 라우터

IP 주소 등을 참조하여 목적지와 연결되는 포트로 패킷을 전송한다.

다른 네트워크( LAN )구간의 장비와 통신을 하려면 반드시 L3 장비를 거쳐야 한다.

경로 결정, 경로에 따른 패킷 전송

L3 스위치는 VLAN 간 고속 라우팅을 위해 사용하는 경우가 많다.

동일한 VLAN 포트간에는 스위칭 기능을 제공하고 서로 다른 VLAN 포트간에는 라우팅 기능을 제공한다.



'NCS보안3기 > 네트워크' 카테고리의 다른 글

[Network] TCP/IP 모델  (2) 2017.04.06
[Network] MAC 계층과 데이터링크 계층  (0) 2017.04.05
[Network] 네트워크 기술  (0) 2017.04.05
[Network] 네트워크 통신  (0) 2017.04.04
[Network] 네트워크 기초  (0) 2017.04.03
Posted by Imp3rio