위로
아래



Network 접속 장치
통신망(근거리 통신망 LAN, 광역 통신망 WAN) 구성에 가장 기본이 되는 하드웨어
NIC
LAN 카드 (NIC, Network Interface Card)
- 컴퓨터를 네트워크에 연결하기 위한 장치 (네트워크 어댑터)
- 직렬화(Serializtion) 역할
- 송신 시 : 데이터를 전기 신호로
- 수신 시 : 전기 신호를 데이터 형태로
- MAC 주소네트워크에 연결하는 물리적 장치에는 반드시 하나 이상의 LAN 카드가 있어야 한다.
- 메인보드의 확장 슬롯에 설치
- OSI 2계층 데이터링크 계층에 속한다.
- 이름이 여럿 : 네트워크 인터페이스 카드, 네트워크 카드, 랜 카드, 물리 네트워크 인터페이스, 이더넷 카드, 네트워크 어댑터 등
- 동작 방식
- 전송된 전기 신호를 데이터 형태로 변환
- 데이터를 읽어서, 데이터에 내재된 목적지 MAC 주소와 출발지 MAC 주소를 확인
- 목적지에 부착된 NIC(자기 자신)의 MAC 주소 확인
- 목적지 MAC 주소와 NIC(자기 자신)의 MAC가 맞으면 데이터를 처리하고, 다르면 폐기한다.
MAC 주소 (Media Access Control Address)
- 네트워크 인터페이스에 할당된 물리적 고유 식별 주소
- OSI 7계층 중 데이터 링크 계층
- 인터넷을 할 수 있는 이더넷 기반 기기에는 모두 다 하나씩 할당되어 있는 고유한 ID
- IP와 비교
- IP주소는 고정되어 있지 않은 논리적인 주소
- MAC 주소는 제조 시 정하는 물리적인 주소
Hub
허브 (Hub)
- 여러 대의 컴퓨터를 연결하여 같은 네트워크를 만들어주는 장치
- Switch보다 먼저 만들어진 연결 장비
- 데이터를 자신에게 연결 된 모든 기기에 전달
- 거리가 멀어질수록 줄어드는 전기 신호를 재생성해준다
- 패킷이 무한 순환해 네트워크 전체를 마비시키는 루프와 같은 장애가 발생할 위험이 있어 현재에는 거의 사용되지 않는다.
- OSI 1계층 물리 계층 (MAC 주소를 읽을 수 없어 자신에게 들어온 신호는 자신의 포트에 연결된 모든 단말로 동시에 전송한다)
리피터 (Repeater) 역할
- 감쇠된 신호를 증폭
- UTP 케이블의 경우 100m를 넘어가면 신호가 감쇠하는데, 중간에 허브를 설치하면 100m 넘게 통신이 가능하다
멀티포트 (MultiPort) 역할
- 공유기의 포트 수가 모자랄 때 허브를 연결하면 더 많은 컴퓨터를 연결할 수 있다.
1차선 통신 (브로드캐스트 BroadCast)
- 한 포트에서 신호가 들어가면 네트워크 전체를 목적지로 데이터를 전송
- 데이터를 수신받지 않을 컴퓨터는 해당 LAN카드에서 데이터를 확인하고 폐기한다. (비효율적)
- collision domain : A 컴퓨터가 통신을 하는 동안 허브에 같이 연결된 B 컴퓨터가 통신하면 충돌이 일어난다. 이때 충돌의 영역.
Switch
스위치 (Switch)
- 허브와는 달리, 정확한 목적지 컴퓨터에게만 데이터를 전송 (UniCast 유니캐스트)
- 스위치에 연결된 디바이스들의 IP와 MAC 주소를 테이블로 가지고 있기 때문에 가능
- OSI 7계층에서 어떤 주소를 가지고 스위칭 하는가에 따라 종류가 나뉜다.
- 높은 계층을 다루는 스위치일수록 비싸고, 하위 계층 스위치 기능도 할 수 있다.
- LAN 통신에선, ARP 브로드캐스트를 통해 서로 MAC 주소를 먼저 주고 받는다. 이때 스위치도 스위치 MAC 주소 테이블을 완성한다.
- MAC 주소 테이블의 에이징타임(Aging Time)이 ARP의 에이징타임보다 길어서, 스위치 MAC 주소 테이블이 만료되기 전에 ARP가 재입력 해주기 때문에 플러딩 없이 운영이 가능하다.
BPDU (Bridge Protocol Data Unit)


- STP 프로토콜에 의해 정보를 주고 받는 프레임(2계층 Data 형식)
- 각 스위치에서 매 2초마다 작동하는 모든 포트들에서 만들어져 전송된다
- 스위치 ID, 포트 ID 등의 정보가 들어 있어서, 스위치들은 BPDU를 교환하며 상호 정보와 토폴로지를 파악할 수 있다.
- 이를 통해 루프 지점을 확인하여 루프를 예방할 수 있다.
플러딩 (Flooding)
- 특정 destination이 아니라 모든 포트로 패킷을 흘리는 동작 (허브처럼)
- 들어온 패킷의 목적지 MAC 주소가 스위치 MAC 주소 테이블에 없으면 플러딩이 이루어진다
- 스위치가 패킷을 플러딩한다는 건 스위치가 제 기능을 못하고 있다는 뜻이다
- 비정상적인 플러딩 : 스위치에 엉뚱한 MAC 주소를 학습시키거나 스위치 MAC 주소 테이블을 가득 차게 만들어서 강제로 플러딩시켜 패킷을 빼돌릴 수 있다
어드레스 러닝(Address Learning)
- 스위치가 스위치 MAC 주소 테이블을 만들고 유지하는 과정
- 패킷이 특정 포트를 통해 스위치에 들어오면, 스위치는 출발지 MAC 주소와 포트 번호를 스위치 MAC 주소 테이블에 기록한다.
- 브로드캐스트나 멀티캐스트는 출발지 MAC 주소가 아닌, 목적지 MAC 주소만 있기 때문에 그런 통신에서는 어드레스 러닝이 일어나지 않는다.
- show mac address-table 명령어를 통해 스위치 MAC 주소 테이블을 확인할 수 있다
- 사전 정의된 MAC 주소 : 스위치 간 통신을 위한 MAC 주소
포워딩 (Forwarding) / 필터링 (Filtering)
- 포워딩 : 패킷의 도착지 MAC 주소를 스위치 MAC 주소 테이블을 통해 확인해서 알맞는 포트 번호로 패킷을 전송하는 것
- 필터링 : 목적지 포트 외의 다른 포트로는 패킷이 전송되지 않도록 막는 것
- 유니캐스트 통신일 때에만 포워딩과 필터링을 진행하고, BUM 트래픽(브로드캐스트)와 언노운 유니캐스트, 멀티캐스트일 시에는 플러딩한다.
L1 스위치
- 단순히 패킷을 전달한다
- 허브와 리피터 기능을 한다.
- 단순히 수신한 패킷을 연결된 다른 모든 컴퓨터에 전송하는 기능
L2 스위치
- 연결된 디바이스의 MAC 주소를 저장하고 이 정보를 이용해서 스위칭
- 구성이 단순해서 기능은 별로 없지만 성능이 높다.
- SAN(Storage Area Network) 등에 사용한다
L3 스위치 (라우터 Router)
- L2 스위치에서 라우팅 기능 추가.
- IGMP를 이용해서 IP 멀티캐스트를 지원한다
- 네트워크 종단에서 패킷을 받기 원하는 디바이스에게 패킷을 복사해줄 수 있어 트래픽 효율성이 높다.
L4 스위치
- L3 스위치에 로드밸런싱 기능 추가
- 네트워크의 트래픽을 균등하게 분배해준다
- TCP, UDP, RTP(Real Time Protocol) 등의 헤더를 사용해 FTP, HTTP, TFTP, SMTP 등의 프로토콜 중 어느것에 대한 요구가 우선하는지 파악 후 스위칭한다
L7 스위치
- payload 특성을 분석해 패킷을 처리
- payload : 이메일 제목, 내용의 문자열, HTTP 컨텐츠 URL, FTP 파일제목, SSL, ID, Cookie정보, 특정 바이러스
- 높은 수준의 보안을 갖추고 있다
- 패킷 부하 분산 기능 구현
- QOS 기능 구현
Router
라우터 (Router)
- 로컬 네트워크 LAN이 아니라, 원격지 네트워크의 통신을 위해서 사용
- 다양한 경로를 수집해 최적의 경로를 라우팅 테이블에 저장. 패킷이 라우터로 들어오면 정확한 방향으로 패킷이 전송되도록 도착지 IP 주소와 라우팅 테이블을 비교해 최선의 경로로 패킷을 포워딩한다.
- 패킷 포워딩 과정에서 기존의 2계층 헤더 정보를 제거하고 새로운 2계층 헤더를 만들어 붙인다.
- OSI 3계층 네트워크 계층에서 동작.
- L3 스위치와 마찬가지 (원래 라우터는 소프트웨어, L3 스위치는 하드웨어 같은 느낌이 있었지만, 기술의 발달로 구분이 없어졌다)
- 원격지로 쓸데없는 패킷이 전송되지 않도록 브로드캐스트와 멀티캐스트를 컨트롤한다. 불분명한 주소로 통신을 시도할 경우 통신을 버린다.
- 패킷 전송 시 여러 라우터를 거치게 되며, 각 라우터는 현재 자신의 상태를 공유.
- 용어
- TTL (Time To Live) : 3계층의 IP 헤더 필드. 패킷이 네트워크에 살아 있을 수 있는 시간(홉)을 제한. 하나의 홉을 지날 때마다 1씩 감소한다.
- 라우팅 루프 : 라우터가 패킷을 포워딩할 대안 경로를 찾다가 두 대의 Next Hop이 서로를 마주보고 두 라우터 사이에 패킷이 Ping Pong치게 될 수 있다.
- 라우팅 : 얻은 경로 정보 중 최적의 경로를 추려서 라우팅 테이블에 올려 유지하는 과정
- 스위칭 : 패킷이 들어왔을 때 라우팅 테이블을 참조해 패킷을 라우터 외부로 포워딩하는 작업
- 롱기스트 프리픽스 매치 (Longest Prefix Match) / 맥시멈 프리픽스 렝스 매치 (Maximum Prefix Length Match) : 라우터가 패킷을 포워딩할 때 라우팅 테이블에서 가장 좋은 항목을 찾는 알고리즘
- 이그잭트 매치 (Exact Match) : 정확한 정보를 매치해서 패킷을 전송하는 방식
- 하나의 컴퓨터나 마찬가지로 CPU, RAM, ROM, 플래시 메모리, IOS를 갖는다
- CPU : 시스템 기능, 네트워크 인터페이스 컨트롤 같은 운영체제 명령어를 실행
- RAM : CPU가 처리하는 명령어와 데이터를 저장. 휘발성.
- ROM : 부트트랩 명령어, 기본 검진 소프트웨어, 스케일 다운 버전의 IOS를 사용하기 위한 비휘발성 저장소
- 플래시 메모리 : 운영 시스템인 시스코 IOS를 위한 비휘발성 저장소.
- IOS : 시스코사의 거의 모든 라우터, 스위치 등 장비에 구현된 운영체제
Hop by Hop Routing (홉 바이 홉 라우팅)

- 단말부터 목적지까지의 경로를 모두 책임지는 게 아니라, 인접한 라우터까지만 경로를 지정하면 인접 라우터에서 다시 최적의 경로를 파악해 다음 라우터로 패킷을 포워딩하는 방식
- 각 라우터는 패킷이 목적지로 가는 전체 경로를 파악하지 않고, 최적의 넥스트 홉을 파악해 보내준다.
- Next Hop : 인접한 라우터
- Next Hop을 지정하는 방식
- IP 주소 지정 : 일반적으로 사용하는 방법
- 나가는 인터페이스 지정 : Next Hop의 IP를 모르는데, MAC 주소는 알아낼 수 있을 때 사용
- WAN 구간 전용선에서 PPP(Point-to-Point)나 HLDC(High Level Datalink Control) 같은 프로토콜을 사용해 상대의 MAC 주소를 알 필요가 없을 때
- 상대방 라우터에서 프록시 ARP가 동작해, 상대방의 MAC 주소를 알 수 있을 때
- 라우터에서 나가는 물리 인터페이스를 지정
- IP 주소 + 나가는 인터페이스 지정
- VLAN 인터페이스와 같은 논리적인 인터페이스 사용할 때
라우터가 경로 정보를 얻는 3가지 방법 (써져 있는 순서가 우선순위)
AD (Administrative Distance) : 관리 거리. 라우터 생산업체마다 조금씩 다르다
- 다이렉트 커넥티드 (Direct Connected)
- 내가 가지고 있는 네트워크
- IP 주소를 입력할 때 사용된 IP주소와 서브넷 마스크로 해당 IP 주소가 속한 네트워크 주소 정보를 습득
- 인터페이스에 IP를 설정하면 자동 생성되는 테이블
- 정보를 강제로 지울 수 없고, 해당 네트워크 설정을 삭제하거나 해당 네트워크 인터페이스가 비활성화되어야 사라진다.
- 라우터에서 connected로 표현된다
- 정적 라우팅 (Static Routing)
- 내가 경로를 직접 지정한 네트워크
- 네트워크 관리자가 목적지 네트워크와 Next Hop을 라우터에 직접 지정해 경로 정보를 입력하는 방식
- 다른 라우터의 상태 정보를 파악하기 어렵기 때문에, 장애가 발생해도 대체 경로로 패킷을 보내기 어렵다.
- 동적 라우팅 (Dynamic Routing)
- 경로를 전달받은 네트워크
- 인접 라우터들 간에 라우팅 프로토콜을 이용하여 서로 라우팅 테이블을 자동적으로 생성, 유지하는 방식
- 큰 네트워크는 정적 라우팅만으로 관리가 어려워서, 동적 라우팅도 사용한다.
- 그때 그때 트래픽 변화를 반영
라우팅 테이블
- 토폴로지 테이블 (Topology Table)
- 라우터가 수집한 모든 경로 정보, 원시 데이터(Raw Data)
- 라우팅 테이블 (Routing Table)
- 토폴로지 테이블 중에서 추려낸 최적의 경로를 저장하는 테이블
- 실제로 포워딩할 시에는 라우팅 테이블을 참조한다.
Broadcast Control
- 스위치 : 목적지 정보가 없으면 전체 단말에 플러딩
- 라우터 : 목적지 정보가 없으면 패킷을 폐기
- 브로드캐스트 컨트롤 / 멀티캐스트 컨트롤 : 멀티캐스트 정보를 습득하지 않고 브로드캐스트 패킷을 전달하지 않는다. 브로드캐스트가 다른 네트워크로 전파되는 것을 막을 수 있다.
프로토콜 변환
- 서로 다른 프로토콜로 구성된 네트워크를 연결할 수 있다.
- 현재는 대부분의 네트워크가 이더넷을 사용하기 때문에 이 역할을 수행할 일이 별로 없다 (옛날엔 LAN과 WAN의 프로토콜이 완전히 달랐다)
Load Balancer
로드 밸런서
- OSI 계층 중 4계층 전송계층에서 동작
- 4계층 포트 주소를 확인하는 동시에 IP 주소를 변경할 수 있다.
- 세션 장비라고 부르기도 한다 (세션 테이블 기반)
- 서버나 장비의 부하를 분산하기 위해 사용 (트래픽 분배 기능)
- 서버형 로드밸런서, 소프트웨어 로드밸런서, 스위치 로드밸런서가 있다. (다양한 네트워크 구성이 가능한 스위치가 가장 대중적)
- L4 로드 밸런싱, L7 로드 밸런싱 두 계층 방식이 있다. (요즘의 로드밸런서는 보통 L4와 L7 기능이 모두 있는 L7 로드밸런서이다. 그런데 L4 기능만 하면 그냥 L4 로드 밸런싱이라고 한다)
L4 스위치
- 스위치처럼 여러 포트를 가지고 있으면서 로드 밸런서 역할도 수행하는 장비
- 기능 : 부하 분산, 성능 최적화, 리다이렉션
- TCP / UDP 정보를 기반으로 부하를 분산하면서, TCP 계층의 최적화와 보안 기능 제공
- 사용자가 가상 IP에 접속하면, 가상 IP를 리얼 IP로 바꿔주는 역할 (이를 통해 부하를 분산)
- 가상 서버 (Virtual Server), 가상 IP (Virtual IP) :사용자가 바라보는 서비스와, 사용자가 접근해야하는 서비스 IP 주소
- 리얼 서버 (Real Server), 리얼 IP (Real IP) : 실제 서비스를 수행하는 서버, 실제 서버의 IP
L7 스위치 ADC
- ADC(Application Delivery Controller) : 7계층 애플리케이션 계층에서 동작하는 로드 밸런서
- 기능 : 부하 분산, 정보 수정, 정보 필터링, 페일오버(장애극복), 리다이렉션
- 프록시(Proxy)로 동작한다
- 애플리케이션 프로토콜의 헤더와 내용을 이해하고 동작 (캐싱, 압축, 콘텐츠 변환 및 재작성, 인코딩 변환, 애플리케이션 프로토콜 최적화 기능 등)
- ADC의 성능 최적화
- Caching : 이미지 캐싱 기능
- 압축
- SSL Offloading : 사용자와 로드밸런서까지는 보안이 추가된 HTTPS로 통신하고, 로드밸런서(프록시 역할)와 실제 서버까지는 HTTP로 통신
공유기
- 2계층 스위치, 3계층 라우터, 4계층 NAT과 간단한 방화벽 기능을 한 곳에 모아놓은 장비
- 공유기 내부는 스위치 부분, 무선 부분, 라우터 부분 회로로 나뉜다.
모뎀
- 짧은 거리를 통신하는 기술과 먼 거리를 통신하는 기술을 서로 변환해주는 장비
- 네트워크 종류와 쓰이는 기술에 따라 여러 종류의 모뎀이 사용된다.
- 기가 인터넷 : 대부분 FTTH 모뎀
- 동축 케이블 인터넷 : 케이블 모뎀
- 전화선 : ADSL, VDSL 모뎀