프로그래밍[Univ]/네트워크

[네트워크] MAC

Cloud Travel 2012. 5. 27. 12:36

* Multi Access(MAC)

 - 통신 장치들이 동일한 링크를 같이 사용하여 프레임을 전송할 때, 하나 이상의 장치가 동시에 프레임을 전송

   하려고 하면 충돌이 발생한다.

 - 링크 접근과 다중 접근 제어가 필요로 하다.

   

 - Protocol 분류

 ⓐ Random access protocols : random으로 연결

 ⓑ channelization protocols : 각각 마다 별도의 채널을 할당

 ⓒ controlled access protocol : 제어하면서 연결을 설정


* Random access : 중앙 제어 장치 없이 모든 장치들이 동일한 자격으로 프레임을 전송할지 말지를 결정

 ⓐ Aloha protocol

  - 2개 이상의 Frame이 동시에 전송되면 충돌이 발생하고, 충돌된 모든 프레임은 사라진다.

  - 오직 한개 만 하나의 시점에 전송이 일어나야 한다.(무질서)

  - Frame에 대한 ACK이 오기 전까지 지속적으로 전송을 실시한다.

 ⓑ CSMA 

  - 전송하기전에 누군가 channel을 사용하는 지 check후 전송을 실시한다.

  - 충돌 문제는 발생한다. 어떤 Frame이 channel에 참여할 때 전송 지연시간 (propagation time)동안 

    다른 Frame이 접근을 시도하여 충돌이 발생한다.

 ⓒ CSMA/CD(collision detection)

  - CSMA방식에 추가 개념이 존재

  - 전송하기전에 누군가 channel을 사용하는지 check후 전송실시

  - 전송하려고 channel에 참여했는데 누군가 존재하면 전송을 중지하고 재전송을 대기한다.

    

  - 다음과 같은 경우를 생각해보자.

    

 > A가 먼저 전송을 실시 하였는데 C가 propagation time에 끼어든 모습이다.

  > 이경우 충돌이 일어난 시접에서 A의 데이터에 약간의 손실이 발생하고, C는 전송을 중지하고, 

     충돌 지점을 전파한다.

  > 하지만 C의 충돌 지점을 받기전에 A는 전송을 마치고, 자신이 데이터 전송이 완벽하게 된 것으로 생각한다.

  > propagation time에 들어온 frame이 의해 충돌된다면, 먼저 보내는 측은 충돌 message를 봐야 한다. 

     이를 보장하기 위해 최소한의 전송시간을 정한다.

 ⓓ CSMA/CA(collision avoidance)

  - 무선망에서 쓰는 방법으로 CSMA + CA 기법

  - 자세한 내용은 802.11 wireless lan에서 보도록 한다.


* Controlled access

 - Reservation : Data를 보내려고 하면 미리 예약을 해놓는다. 자신의 차례가 오면 Data 전송을 실시한다.

 - Polling : 중앙에 사회자가 존재하여, Scheduling을 해준다.

 - Token Passing : 사회자가 존재하지 않고, Token이 순환해가며(Passing), Token을 가진 사람이 전송 실시

                            Ring형태로 실시하며, Token이 없어지거나, Token이 늘어나면 System error!


* Channelization

 - 컴퓨터 통신망보다 이동통신망에서 많이 사용되는 방식

 - MAC과 동일한 방식으로 작동한다.

 ⓐ FDMA(Frequency - Division Multiple Access)

  - FDMA의 특정 channel을 여러 주파수로 나눈다.

  - Device마다 특정 주파수를 점유한다.

  - 한계 : 주파수를 나누는데 한계가 존재한다 > 가용 device의 한계가 존재한다.

     cf ) CSMA는 Performance가 줄어 들 수 있지만 무제한 연결 가능.

    ex) 1MHz FDMA가 존재하는데 한 device마다 10kHz를 사용한다면 최대 100개의 device만 연결이 가능하다.

  - 장점 : 충돌이 발생하지 않는다.

     (아날로그)

 ⓑ TDMA(Time - Division Multiple Access)

  - TDMA는 주파수를 나누는 것이 아니라 전송하는 시간을 나눠서 전송을 한다.

  - 각각의 시간을 time slot이라고 하며, TDMA의 속도는 TDMA로 돌어오는 전송속도를 다 합친 것 이상의 속도를

    가져야 한다.

     (디지탈)

   

 ⓒ CDMA(Code-Division Multiple Access)

  - 각각의 device가 보내는 데이터를 섞어서 보낸다. > 받는 측에서 자신의 데이터를 찾을 수 있는가? Yes!!

  - 각각의 device마다 chip sequence를 부여해서 자신의 data를 찾아낸다.

     (디지탈)

    

      (잘 안보이니 확대(클릭)해서 보세요.)

  - 장점 : 같은 주파수로 많은 device가 사용 가능하다.

  - 단점 : TDMA보다 품질이 떨어진다.

  - chip sequence가 중요한 역할을 하는데 chip sequence는 다음 점화식을 따라서 생산된다.