IEEE 표준 프로토콜
Xerox사의 미국 팔로알토 연구소
Ethernet이라고 부르는 프로토콜은 어느 책에서는 이더넷이라고 쓰기도 하고 이써넷이라고 하기도 합니다. 이더넷이라고 부르는 이 프로토콜의 역사는 굉장히 오래됐습니다. 복사기 만드는 회사 Xerox, 그 Xerox사의 Palo Alto라는 곳에 연구소가 있었습니다.
Palo Alto의 Research Center라고 하는 연구소에 있는 Robert Melancton Metcalfe란 연구원이 만들었습니다. 그게 굉장히 오래됐습니다. 1976년에 만들었습니다. 근데 그걸 지금까지도 쓰고 있습니다. 근거리에서 데이터를 전송하는데 이만한 속도를 내는게 없습니다.
그 당시에 이게 10Mb는 정말 어마어마한 속도였습니다. 근데 이걸 만들고 나니, 이걸 Xerox사에서만 쓸게 아니라 좀 여러 회사에서 써야 했습니다. 그래서 처음에 Digital Equipment와 Intel, Xerox 3개의 회사가 연구하여 표준을 만들게 됩니다. 그래서 이거를 DIX스타일, 회사의 첫 글자만 따서 DIX라고 불렀습니다.
그래서 LAN카드 같은거 삽니다. 그럼 뒤에 소위 말하는 스펙이라는게 나와 있는데 DIX라는 말이 써 있습니다. 그게 써 있으면 이게 제조회사구나라고 생각하면 됩니다. 그래서 연구에 몰두해서 이런 3개 사가 연합해가지고 이더넷을 만들었습니다. 이거를 미국 전국에서 쓰겠다라고 생각하였습니다.
그래서 미국의 학회, 학술단체인데 표준프로토콜도 만들고 있었습니다. 그래서 IEEE이라고 부르는 기관에서 이 이더넷을 표준으로 만들게 됩니다. 그러다가 결국에는 국제 표준화기구, 국제적으로, 이제 미국에서만 쓰는게 아니라 전 세계에서 다 쓰자 라고 해서 ISO라고 하는 표준화 기구에서 표준화에 이르게 됩니다.
이더넷이라고 부르는 것이 한 연구원이 개발한 것이 몇몇 회사에서, 미국 전체에서, 세계 전체로 쓰고 있고 그게 심지어 지금까지 표준으로 쓰고 있습니다. 그러니까 중요한 프로토콜입니다.
이더넷은 LLC와 MAC으로 구성된 2개의 부계층이 존재
Ethernet프로토콜은 매체를 공유하는 환경에서 이제 어떻게 데이터를 보낼까? 라는 고민부터 시작하게 됩니다. MA, CSMA, CSMA/CD, CSMA/CA 이렇게 나누어 있습니다. 이렇게 매체를 여러 개의 컴퓨터들이 접속할 때 사용하는 프로토콜로 가게 되는데, 이전에도 말씀드렸듯이 매체가 종류의 다양합니다.
종류가 다양한 것을 수용하도록 하기 위해서 걔네들만 신경 쓰는 계층과 이게 데이터링크계층에서 가져야 되는 공통적인 기능이 있습니다. 역할이 있습니다. 에러제어하고, 흐름제어하는 게 있습니다.
그런거는 매체의 종류에 관계없이 공통적으로 해야 됩니다. 밑에 계층을 Media Access Control이라고 해서 MAC계층이라고 부릅니다. 어느 미디어에 상관없이 공통적으로 사용되는 기능을 제공하는 프로토콜이 있어야 됩니다. 그것을 Logical Link Control이라고 해서 LLC하는 두 개의 부계층으로 나뉘게 됩니다.
그래서 LAN 프로토콜을 이야기하게 되면 반드시 두 가지가 나오게되어있습니다. 하나는 MAC, 하나는 LLC 이게 나오게 됩니다. 그래서 두 개의 계층으로 나누어서 생각을 합니다.
LAN에서 흐름제어, 에러제어 등 각종 제어에 대한 행위를 수행
그러면 이제 밑에 MAC 계층에는 어떤 것들이 있느냐 Ethernet과 같은 프로토콜도 있고 토큰링 같은 프로토콜, 토큰 버스가 있고 여러 가지가 있습니다. 왜냐하면 매체에 접근하는 방식에 따라서 여러 종류가 있을 수 있습니다. 그 다음으로 매체에 접근하는 미디어 엑세스 컨트롤하는 프로토콜의 종류와 상관없이 공통적으로 가져야할 기능들은 모아놓은 것이 "Logical Link Control" 이렇게 부릅니다.
그래서 보통 LAN표준을 이야기하게 되면 LLC가 공통적으로 있고 그 밑에 이더넷도 있고 토큰링도 있고, 토큰 버스도 있고 여러 개의 MAC프로토콜들이 존재하게 됩니다. LLC가 하는 역할은 흐름제어, 오류제어 등 모든 MAC에 공통적으로 사용할 수 있는 기능을 모아놓은 프로토콜을 LLC이라고 말할 수 있습니다.
IEEE 802 Working Groups
IEEE에서는 처음에 Ethernet으로 시작을 해서 LLC라는 것도 정의를 해야 하겠고 그 다음에 이더넷을 처음에 만들었습니다. 속도가 10메가에서 100메가 1기가 이렇게 막 올라갑니다. 그래서 올라감에 따라서 표준을 연구하는 IEEE의 위원회를 따로따로 두게 됩니다.
예를 들면 802.3u에서는 패스트 이더넷이라고 해서 10메가를 100메가로 업그레이드 시킬 때 도대체 어떤 점들이 바뀌는지를 연구하는 위원회가 있습니다. 802.3z에서는 100메가에서 또 1기가로 업그레이드 됐을때 어떤 부분이 달라지는지 이런거를 연구하는 그룹을, 커뮤니티 워킹 그룹을 따로 둡니다.
그래서 802.3z 이렇게 이름을 붙여서 위원회를 만들어서 진행을 합니다. 그러다 링크를 여러 개를 하나로 모아서 전송하는 방법은 어떤 것들이 있습니다. 그 다음에 10G짜리는 어떻게 하고 토큰버스는 토크버스를 이용한 MAC프로토콜은 어떻게 동작해야 할까요? 토큰링 프로토콜은 어떻게 동작하는지 Metropolitan Area 네트웍에서는 어떻게 해야 되고, 그러니까 처음에 사실은 LAN프로토콜 하나만 가지고서 이더넷 하나만 가지고 쭉 진행을 했다가 거기에 이런 종류, 개선안이 여러해에 걸치면서 새로운 위원회를 만들어서 진행을 하게 됩니다.
이 위원회를 워킹그룹이라고 부르며, 워킹그룹의 이름을 프로토콜의 이름처럼 사용하기도 합니다. 예를 들면 IEEE 802.2라고 해도 되고 그냥 LLC 이렇게 불러도 되고 그 다음에 IEEE 802.3 이렇게 해도 되고 CSMA/CD프로토콜 이렇게 두 개가 동의어로 사용하게 됩니다. 그러다가 유선만 하다가 무선이 나타나게 됩니다.
무선에서도 어떻게 써볼 수 없을까라고 해서 연구하던 데가 802.11, 이 안테나 두 개가 있습니다. “11” 그러니까 이게 이제 무선이 나타나게 됩니다. 무선도 점점 속도 1M에서 점점 속도가 늘어나게 됩니다. 그리고 또 근거리, LAN이 아니라 더 적으거, Personal Area 네트웍이라고 해서 PAN이라고 해서 Wireless PAN이 만들어지게 됩니다. 그래서 블루투스라든지 Zigbee라든지 이런 프로토콜이 나오고 그리고 이동하면서 데이터도 쓰고 음성도 쓰고 이렇게 하겠다라고 해서 802.16, 802.20 이런 프로토콜이 자꾸 고민해서 연구하는 워킹그룹들이 할당되서 활동을 하게 됩니다.
처음에 시작은 어떻게 하면 공유매체에서 데이터를 보낼거냐라는 멀티플 엑세스 관점에서 이제 이더넷이라는 아주 훌륭한 프로토콜이 하나 만들어짐으로 인해서 더 발전시키고 또 변형해서 무선으로 쓰고 또변형해서 다양한 형태로 쓸 수 있는 그런 프로토콜이 계속 나타나는 그런 형태들이 됩니다.
Ethernet
이더넷의 처음에 시작은 10메가였습니다. 지금 10메가는 사실 별로 빠른건가 이런생각이 들 수 있습니다. 근데 예전에 70년대, 그 당시의 10메가 그러면은 엄청나게 빠른 겁니다.
10메가 보다 10배 빠른 100메가가 등장하고 100메가를 이더넷보다 빠르니까 패스트이더넷이라고 부르게 됩니다. 이더넷 그러면은 10메가 인거고 패스트이더넷 그러면은 100메가입니다. 그러다가 이제 그거보다 또 10배 빠른, 100메가 보다 10배 빠른 1000메가는 1기가 입니다. 그래서 기가빗이더넷이 나오게 됩니다.
이더넷 그러면 10메가, 패스트이더넷 그러면 100메가, 기가빗이더넷 그러면 1기가 이렇게 됩니다. 그러다가 또 10배 빠른 10기가가 나오게 됩니다. 10기가는 10G라고 부릅니다. 꼭 이렇게 10배씩 빨라집니다. 그래서 이제 이더넷 자체가 속도가 점점점 빨라지게 되는 겁니다.
MAC 프레임
자, 이더넷 프레임이 있습니다. 이거 책에 따라 앞부분의 프레임을 제외하고 설명하는 경우가 있습니다. 보통 이제 제일 앞부분의 Preamble과 Start Frame Delimiter하는 8바이트를 포함시키기도 안 시키기도 합니다. 왜냐하면 이 부분은 하드웨어에서 비트의 손실이 발생할까봐 임의 필드로 사용하기 때문에 이더넷 프레임의 형태는 아니다 이렇게 제외시키는 경우도 있고 포함하는 경우도 있습니다.
포함하는 경우로 간단히 설명하도록 하겠습니다. 이더넷 프레임 포맷은 MAC프레임 포맷이랑 같은 이야기입니다만, 제일 앞부분의 목적지 주소 6바이트가 나옵니다. 그러니까 이제 편지를 쓰거나 우편물 보낼 때 목적지주소를 씁니다. 그 다음으로 보내는 사람을 씁니다.
그래서 목적지 주소 그 다음에 송신자 주소 이렇게 6바이트, 6바이트 들어갑니다. 다음에 나오는 필드가 Length나 길이를 뜻합니다. 전체 이 프레임의 길이가 얼마나 된다고 하는 길이 혹은 타입, 타입은 위에 올라가는 링크계층입니다. 링크계층 위에 올라가는 네트워크 계층의 프로토콜이 무엇인지를 명시하는데 사용하는 것이 타입이 됩니다.
이게 길이로 쓰이기도 하고 타입으로 쓰이기도 하고 그럴수가 있습니다. 값이 뭐가 들어가냐에 따라서 달라집니다. 그 다음으로 데이터가 옵니다. 그 다음에 제일 마지막으로 CRC가 4바이트가 통상 들어갑니다. 이 CRC는 Cyclical Redundancy Check이라고 하는데 사용자가 보내는 데이터 부분에 에러가 있느냐 없느냐를 확인하는데 사용되는 필드가 CRC입니다.
앞에 하드웨어가 넣는 부분이 있고, 그 다음부터는 목적지 주소, 송신자주소, 길이 혹은 타입, 그 다음에 데이터, CRC 를 넣습니다. 이정도가 MAC프레임포맷, 이더넷프레임포맷이라고 부르고 있습니다. 그래서 각각의 다 기능들이 있습니다.
목적지 주소는 목적지주소, 송신자 주소는 누가 보냈는지 송신자의 주소, 그 다음에 Length/type가 들어가고 그 다음에 데이터, 근데 데이터는 최소가 있고 최대가 있습니다. 최소는 46바이트가 들어가게 됩니다. 최대는 1500바이트 그래서 프레임의 전체, 앞에 Preamble과 SFD를 빼고 이더넷 프레임의 전체 길이는 최대는, 이게 데이터가 1500바이트입니다.
나머지 필드를 다 더하면 18바이트가 됩니다. 그래서 1518바이트가 최대가 되고요. 최소는 46 더하기 18하게 되면 64바이트가 최소 바이트가 됩니다.
주소지정
자 그 다음으로 목적지와 송신자 주소가 있다고 했는데, 부르는 용어가 다양합니다. MAC주소 또는 물리주소, 하드웨어 주소라고도 하고 이더넷주소라고도 부릅니다. 이 6바이트가 들어가게 되어 있습니다. 그래서 이게 컴퓨터에 할당되는 주소라고 생각하면 됩니다. 근데 보통 이제 IP주소와 다르게 하드웨어주소, 물리주소, MAC주소라고 부르는 얘는 사용자가 일반적으로 설정을 할 수 없습니다.
여러분이 이제 LAN카드를 구입하게 되면 공장에서 출하될 때, 주소가 무엇인지 찍혀 나오게 되는 그런 주소입니다. 이 주소들은 다 고유합니다. 그래서 주소가 고유한걸 가지고 있습니다. 간혹 목적지주소가 이제 전부 다 이진수로 1인거, 16진수로는 FF:FF:FF:FF:FF:FF로 박혀있는 그런 주소가 나타나기도 합니다. 이런 경우에는 브로드 캐스트라고 합니다.
그러니까 나는 말하는데 여기 있는 사람 다 들어라 그 LAN 붙어있는 모든 컴퓨터 다 받아라 라고 할 때 사용하는 주소가 이진수 전부 1, 16진수로 전부 F이렇게 가는 것이 브로드캐스트 주소입니다. 그 외에는 내가 보내고자하는 사람이 누군데, 받는 사람이 누구다 정확하게 지칭합니다. 이거를 유니캐스트라고 부릅니다. 그렇게 지칭하는 주소를 가지고 있게 됩니다.
MAC 프로토콜 : CSMA/CD
이더넷에서는 사용되는 방식이 Persistent방법이라고 하는데 이게 뭐냐면 이더넷은 CSMA/CD를 사용하게 됩니다. MA가 있고 CSMA가 있고 유선은 CSMA/CD를 쓰고 무선은 CSMA/CA를 씁니다. CSMA/CD는 데이터를 보내기 전에 Carrier Sense를 해봅니다. 누가 데이터를 보내나 안 보내나 확인을 합니다. 들어봤는데 아무도 안 보내면, 보내면 됩니다.
근데 들어봤는데 누가 보내고 있습니다. 그럴땐 어떻게 하느냐? 이거죠. 그럴 때 이더넷은 1-Persistent방법을 사용하게 됩니다. 근데 누가 보내고 있어요. 그럼 계속해서 듣습니다. 언제 끝나나 계속 듣고 있다가 딱 송신이 완료되면 그 때 바로 데이터를 보내면 됩니다. 그러면 만약 다른 컴퓨터도 같은 동작을 할 경우, 서로 충돌이 일어나게 됩니다.
근데 이더넷이 이런 동작으로 데이터를 주고받습니다. 그래서 이더넷은 무엇을 사용하던 간에 주로 유선입니다. 유선을 사용하는 컴퓨터에서 어떤 데이터를 보내려고 하면 누가 보내고 있으면 Carrier Sense를 해서 들어봅니다. 쭉 듣다가 누군가 보내고 있는게 끝나자마자 바로 치고들어가서 보냅니다. 그런 방법을 씁니다. 바로 이더넷이 그렇게 합니다.
이더넷의 형태
이제 이더넷이 구현된 형태가 여러 가지가 있습니다. LAN과 관련된 책을 보게되면 이런 용어를 많이 봅니다. 10Base5, 10Base2, 10Base-T, 10base-F가 있습니다. 여기서 앞에 붙어있는 10이라고 하는 것은 속도를 의미하며, 10이 붙어있으면 10메가, 100이 붙어있으면 100메가입니다. 1000이 붙어 있으면 1기가입니다.
그 다음엔 Base가 붙어 있는거는 Baseband 신호 방식을 사용한다는 뜻입니다. Baseband 신호 방식은 디지털 신호 그대로 보내는 것을 말합니다.
컴퓨터에서 사용하는 디지털신호 있습니다. 이제 케이블이 쭉 LAN케이블이 있습니다. 딱 자르면 뭐가 튀어나옵니다. 이런 깍두기 모양의 디지털 신호가 나온다. 그게 이제 Baseband입니다.
이제 뒤에 나오는 숫자나 문자는 의미가 조금 다른데 숫자 5는 케이블의 길이 500m라는 이야기고 2는 200m, T는 트위스티드 페어케이블, F가 붙어있습니다. Fiber-Optic, 광케이블을 사용한다는 이야기가 됩니다.
10Base5: Thick Ethernet
10Base5라고 하는 것을 Thick Ethernet이라고도 부릅니다. 왜 그러냐하면 케이블이 두껍습니다. 두꺼워서 Thick 이더넷이라고 부릅니다. 이걸 썻던 경험이 있는데 케이블이 진짜 두껍습니다. 무겁구요. 굉장히 두껍습니다.
여기에 동축케이블을 사용하는데 공구로 구멍을 뚫어서 거기에 네트워크에 관련된 여러 장치를 설치하여 그 다음에 케이블을 연결하고 LAN카드를 꽂아서 데이터를 전송하는 방식을 사용합니다. 구멍을 뚫어서 사용하다보니 모든 컴퓨터에서 데이터를 보낼 경우 충돌이 발생하게 됩니다.
그래서 케이블 하나를 모두 공유하는 형태로 토폴로지에선 버스형 토폴로지라고 불렀습니다. 한 케이블의 최대 길이로 몇 미터로 가져갈 수 있냐하면 500미터를 가져갈 수 있습니다. 리피터라는 것을 설치하면 최대 2500미터까지 연장할 수 있습니다. 근데 한 케이블에 리피터 안 달고 한 케이블의 최대 길이는 500미터라고 봅니다. 그 다음으로 케이블이 좀 가는게 있습니다.
그것을 10Base2라고 불렀습니다. 요거를 얇다라고 해서 Thin Ethernet이라고 불렀습니다. 여기에서 주로 BNC-T커넥터를 사용을 했었습니다. 근데 케이블의 길이는 200미터는 아닙니다. 대략 200미터 정도이며, 실제로는 185m정도 됬었습니다. 그 정도 케이블 길이를 사용하여 LAN을 사용하는 형태를 나타냈습니다.
사실 10Base5나 10Base2 같은 경우는 거의 찾아보기가 어렵습니다. 동축케이블의 문제점으로 인해 거의 사용하지 않습니다.
10Base-T : Twisted-Pair Ethernet
그 다음에 많이 사용됬던게 10Base-T라고 부르는 겁니다. 그래서 이건 CSMA/CD방식으로 구현된 방식이 10Mbps의 속도로 Baseband 신호방식으로 T, 트위스티드 페어 케이블을 사용하는 형태입니다. 대부분이 매체에서 설명드렸던 UTP라고 하는 케이블을 사용한 형태인거죠.
집에 보면 IP공유기라고 있잖아요? IP공유기 뒷면에 보면 구멍이 꿇려서 RJ45 커넥터를 연결할 수 있는 장치를 허브라고 말할 수 있습니다. 거기에 연결해서 사용하면 10Base-T와 비슷한 형태를 가지게 됩니다. 근데 이제 속도는 10메가 아니고, 100메가입니다.
그래서 허브라고 하는 장치를 일반적으로 회사나 PC방에서 사용하고 허브의 연결된 케이블을 통해서 데이터를 주고받는 것이 10Base-T 형태가 되겠습니다.
10Base-F : Fiber Ethernet
그 다음으로 이제 사용되는 케이블을 광케이블을 사용하는 경우를 10Base-F라고 합니다.
그래서 광케이블을 사용하는 허브를 사용할 수 있고 여러 커넥터를 이용해서 컴퓨터와 연결해서 광케이블을 사용하는 통신이 10Base-F라고 할 수 있습니다.
Fast Ethernet
그러다가 속도를 10배로 빠르게 하는게 나왔습니다. 그걸 이제 패스트이더넷이라고 합니다. 패스트이더넷도 실제로 구현된 형태, 개발된 형태가 다양한 종류들이 존재하게 됩니다. 사람들이 이전에는 10base2, 10base-T 이렇게 부르다가 현장에서는 이거를 백베이스TX 뭐 이렇게 부릅니다.
원래는 one hundred base TX라고 영어로 다 말해야 되는데, 실제로 가보면 한 단어쓰는 것을 좋아해서 백베이스라고 합니다. 그래서 TX가 있고 FX가 있는데, 광케이블을 쓰는 것입니다. 그 다음에 T4, TX를 사용하면 T가 붙어있으니까, 트위스티드 페어 케이블을 사용합니다.
TX라고 하는 것은 송수신이 동시에 되는 기능을 말하며, T4는 동시에 안 되는, 송신을 하는 동안에는 수신을 할 수 없고 수신을 할 때는 송신할 수 없는 기능을 가지고 있습니다. 그러니까 당연 TX가 성능이 더 좋죠. 동시에 주거니 받거니까 되니까 더 좋습니다.
100메가로 개선되면서 10메가도 수용을 하자라고 해서 자동협상 기능이 들어갑니다. Auto negotiation이라고 하는 애가 이제 협상을 해서 10메가로 동작을 한다고 하면 그럼 10메가로 쓰면 됩니다. 100메가로 동작을 한다고 하면 그럼 100메가로 씁니다.
그렇게 하게 되면, 컴퓨터실에 컴퓨터가 50대가 있는데 한꺼번에 100메가로 다 바꾸기 위해서 전부 다 쓸만한 것들을 다 뽑아버리고 100메가로 간다면, 돈 낭비가 심합니다. 그러니까 기존의 것은 쓰는대로 쓰고 새로운 컴퓨터가 들어올 때는 100메가로 쓰도록 하기 위해서 자동협상기능을 넣었다고 보면 됩니다. 그러다가 또 10배 빨라집니다. 100메가가 아니라 1000메가가 나오기 시작합니다.
Ten-Gigabit Ethernet
그게 이제 1기가, 그래서 이제 구현된 형태를 보게 되면 1기가서부터는 광케이블을 훨씬 많이 사용하니까, SX, LX, CX 애네들 전부 광케이블을 사용하는 형태입니다. 그리고 트위스티드 페어 케이블도 사용할 수 있습니다. 당연히 동시에 주거니 받거니가 안됩니다. 그래서 트위스티드 페어 케이블을 사용하지만 얘는 동시에는 안 됩니다.
1기가는 맞지만 동시에는 안 됩니다. 10배나 속도가 빨라졌습니다. 10메가짜리가 1기가로 가면서 변하는게 별로 없습니다. 그러니까 CSMA/CD가 기본적으로 동작하는 것은 Carrier Sense를 해서 아무도 데이터를 안보내면 내가 보내고 하는 것이 있습니다.
그냥 속도만 계속 빨라지면서 기존의 기능들을 계속 가져가는 형태가 됐습니다. 그러다가 급기야 10기가, 또 10배 빨라집니다. 10배 빨라지고, 또 나중에 100기가 나오게 됩니다.
100기가 나오고 1000기가 나오면, 1000기가면 1테라입니다. 그런 세상이 아마 머지 않았을 것으로 생각이 됩니다. 이 때도 지금까지도 10기가짜리도 프로토콜 그대로 다 사용이 되는 그런 구조를 가지고 있습니다.
'SW > 네트워크' 카테고리의 다른 글
네트워크 : IPv4 vs IPv6 : 개념, 개요, 차이점, 설명 (0) | 2023.02.01 |
---|---|
HTTP : 500 Internal Server Error 개념, 내용, 설명 (0) | 2022.12.02 |
네트워크 : LAN 매체와 유선 랜 (0) | 2020.09.30 |
네트워크 : 다중접속 프로토콜 개념과 종류 (1) | 2020.09.29 |
네트워크 : 스위칭 방법과 종류 : 개념, 정리 (1) | 2020.09.28 |