Loading the catalog…
Loading the catalog…
네트워크 기본 구조 인터넷과 웹 인터넷 ≠ 웹 인터넷은 여러 네트워크를 연결한 네트워크의 네트워크 이다. 호스트 호스트는 네트워크의 가장자리에 위치하는 노드이다. 서버(Server) : 어떠한 서비스를 제공하는 호스트 클라이언트(Client) : 서버에게 서비스를 요청하고 서버의 응답을 제공받는 호스트 네트워크 장비 호스트 간에 주고받는 정보가 거치는 중간 노드이다. 대표적으로 다음과 같은 장비가 있다. 이더넷 허브 스위치 라우터 공유기 통신 매체 각 노드를 연결하는 간선(Link)이다. 유선 매체 무선 매체 메시지 통신 매체로 연결된 노드들이 서로 주고받는 정보이다. 예를 들어 웹 페이지, 파일, 메일 등이 있다. 범위에 따른 네트워크 분류 네트워크는 범위에 따라 다음과 같이 분류할 수 있다. PAN < LAN < CAN < MAN < WAN PAN PAN(Personal Area Network) 은 개인 주변의 매우 가까운 범위에서 사용하는 네트워크이다. 블루투스 등이 대표적인 예이다. LAN LAN(Local Area Network) 은 가까운 지역을 연결한 근거리 통신망 이다. 일반 가정이나 특정 회사 내부의 네트워크 등이 해당한다. 외부 네트워크를 거치지 않고 같은 네트워크 내부에서 통신하기 때문에 비교적 지연이 짧다. WAN WAN(Wide Area Network) 은 먼 지역을 연결한 광역 통신망 이다. 다른 LAN에 속한 호스트와 메시지를 주고받으려면 LAN과 LAN을 연결해야 하는데 이때 WAN이 필요하다. 인터넷도 WAN으로 분류할 수 있다. ISP ISP(Internet Service Provider) 는 사용자에게 인터넷과 같은 WAN에 연결 가능한 회선을 제공하는 등 WAN과 관련된 다양한 서비스를 제공한다. 네트워크 토폴로지 Network Topology 는 네트워크의 장치들이 어떤 형태로 연결되어 있는지를 나타낸다. Bus 하나의 케이블에 모든 장치를 연결한 형태이다. 설치가 간편함 필요한 케이블이 적어 비용이 적게 듦 문제가 발생한 위치를 찾기 어려움 유지보수가 어려움 현재는 거의 사용하지 않음 Ring 모든 장치가 원형으로 연결된 형태이다. 데이터가 하나의 방향으로 흐르며 토큰 제어 방식 을 사용할 수 있다. 토큰 제어 방식은 네트워크에 하나만 존재하는 Token 을 가진 노드에게만 매체 점유권을 부여하는 방식이다. 한 노드가 Token을 가지고 데이터를 전송하고 있다면 다른 노드는 전송 권한이 없어 대기하게 된다. 한 번에 하나의 데이터를 전송하여 충돌이 발생하지 않음 전송을 예측할 수 있음 하나의 노드에 문제가 발생하면 전체 네트워크가 멈출 수 있음 Ring Topology와 Token Ring Protocol은 같은 개념이 아니다. Token Ring Protocol에서 Ring 형태의 Topology를 사용한다. Star 중앙 장비를 기준으로 각각의 Endpoint가 연결되는 형태이다. 하나의 장치에 문제가 생겨도 다른 장치에는 영향을 주지 않음 장치 추가 및 제거가 쉬움 문제 위치 파악이 쉬움 중앙 장비에 문제가 생기면 전체 네트워크가 마비될 수 있음 Tree 최상위 장비인 Core 장비가 있고 그 아래로 장비들이 부모-자식 관계처럼 계층적으로 연결되는 구조이다. 계층별로 장비가 나뉘어 있어 구조를 파악하고 관리하기 쉽다. 상위 레벨의 장비에 문제가 발생하면 해당 장비와 연결된 하위 장비에도 문제가 생길 수 있다. 또한 특정 장비에 트래픽이 집중되면 병목 현상 이 발생할 수 있다. 병목 현상 사용할 수 있는 자원 중 처리 능력이 가장 낮은 부분 때문에 전체 시스템의 성능이나 속도가 느려지는 현상이다. Mesh 여러 노드를 서로 연결하여 통신 경로를 여러 개 확보하는 구조이다. 하나의 경로에 문제가 발생해도 다른 경로를 이용할 수 있음 구성이 복잡함 유지보수가 어려움 많은 연결이 필요하기 때문에 비용이 증가할 수 있음 메시지 교환 방식 회선 교환 방식 Circuit Switching 은 메시지를 전송하기 전에 먼저 통신에 사용할 회선을 설정하고 해당 경로를 통해 메시지를 주고받는 방식이다. 통신하는 동안 연결된 경로를 계속 점유하기 때문에 회선 이용 효율이 낮아질 수 있다. 패킷 교환 방식 Packet Switching 은 메시지를 Packet이라는 작은 단위로 나누어 전송하는 방식 이다. Packet 패킷 교환 네트워크에서 송수신되는 메시지의 단위이다. Packet Switch Packet이 수신지까지 올바르게 도달할 수 있도록 경로를 결정하거나 Packet의 송수신지를 식별하는 장비이다. 대표적으로 Router와 Switch가 있다. 중복 경로가 구성되어 있다면 특정 장비에 장애가 발생해도 다른 경로를 통해 통신을 유지할 수 있다. 패킷의 구조 Packet은 크게 Payload와 Header/Trailer 로 구성된다. Payload 실제로 전송하려는 데이터이다. Header와 Trailer 데이터 전송에 필요한 부가 정보 또는 제어 정보가 들어간다. 대표적으로 송신지와 수신지를 특정하기 위한 주소 정보가 포함된다. IP Address MAC Address 송수신지 유형별 전송 방식 Unicast 가장 일반적인 송수신 방식이다. 하나의 수신지에 메시지를 전송하는 1:1 통신 방식 이다. 목적지가 정확하게 지정되어 있어야 한다. Multicast 네트워크에서 동일한 그룹에 속한 호스트들에게 데이터를 전달하는 1:Group 방식 이다. Anycast 네트워크에서 같은 주소를 사용하는 장치 중 가까운 장치 등 적절한 하나의 장치로 데이터를 전송하는 방식이다. DNS, CDN 등에 사용될 수 있다. Broadcast LAN 내부에서 자신을 제외한 모든 호스트에게 데이터를 전달하는 방식이다. Broadcast Domain Broadcast가 전달되는 범위를 의미한다. Broadcast는 모든 장치에 데이터를 전달하기 때문에 지나치게 많이 발생하면 네트워크에 부하가 발생하고 성능이 저하될 수 있다. 대역폭 Bandwidth 는 데이터가 지나갈 수 있는 최대 용량이다. 프로토콜 Protocol 은 네트워크에서 원활하게 통신하기 위해 서로 지키기로 합의한 규칙이나 방법이다. 즉, 규칙, 약속, 규약 이라고 볼 수 있다. OSI 모델 네트워크 통신 과정을 계층별로 나눈 참조 모델이다. 물리 계층 모델의 가장 아래에 위치한다. 0 과 1 로 표현되는 Bit 신호를 주고받는 계층이다. 전선이나 케이블과 같이 물리적으로 데이터를 전송하는 부분과 관련된다. 데이터 링크 계층 네트워크 내 주변 장치 간 정보를 올바르게 주고받기 위한 계층이다. 인접한 장치 사이의 연결을 담당한다. Frame MAC Address 네트워크 계층 메시지를 다른 네트워크에 속한 수신지까지 전달하기 위한 계층이다. 어떤 경로를 이용하여 목적지까지 전달할지를 결정하는 것과 관련된다. IP Address 전송 계층 신뢰성 있고 안정적인 통신을 위해 사용하는 계층이다. TCP의 3-Way Handshake 등이 이 계층과 관련된다. 세션 계층 통신을 주고받는 호스트의 응용 프로그램 간 Session(연결 상태) 을 관리한다. 표현 계층 문자를 컴퓨터가 이해할 수 있는 코드로 변환하거나 데이터의 압축, 암호화 등을 담당한다. 응용 계층 사용자 및 사용자가 이용하는 응용 프로그램에 다양한 네트워크 서비스를 제공한다. 사용자와 직접 상호작용하는 계층이다. 통신 과정을 계층으로 나누는 이유 네트워크 구성과 설계가 용이함 네트워크 문제 진단과 해결이 용이함 캡슐화와 역캡슐화 Packet은 송신 과정에서 Encapsulation , 수신 과정에서 Decapsulation 이 이루어진다. 송신 측에서는 가장 높은 계층에서 가장 낮은 계층으로 이동하고, 수신 측에서는 가장 낮은 계층에서 가장 높은 계층으로 이동한다. Encapsulation 정보를 송신할 때 각 계층에서는 상위 계층에서 전달받은 데이터를 Payload로 사용한다. 그리고 해당 계층의 Protocol에 맞는 Header 또는 Trailer를 추가한 뒤 하위 계층으로 전달한다. 즉, 계층을 내려갈수록 Header 등의 정보가 추가된다. Decapsulation 데이터를 수신할 때 Encapsulation 과정에서 추가된 Header와 Trailer를 각 계층에서 확인하고 제거하는 과정이다. PDU PDU(Protocol Data Unit) 는 각 계층에서 데이터를 부르는 단위이다. 계층 PDU 물리 계층 Bit 데이터 링크 계층 Frame 네트워크 계층 Packet 전송 계층 - TCP Segment 전송 계층 - UDP Datagram 상위 계층 Data / Message 네트워크 성능 지표 Traffic 네트워크 내의 정보량이다. Overload 특정 노드에 Traffic이 몰려 해당 노드가 일정 시간 동안 처리해야 할 정보가 많아진 상태이다. Traffic이 많아지면 Overload가 발생할 수 있다. 처리율 시간당 네트워크를 통해 실제로 전송되는 정보량이다. Bandwidth 전송할 수 있는 최대 정보량이다. Packet Loss 송수신 과정에서 Packet이 손실되는 현상이다. 송수신되는 Packet의 양이 많거나 네트워크에 문제가 발생했을 때 발생할 수 있다. ping 을 이용하여 Packet Loss를 확인할 수 있다. Ethernet Ethernet 은 물리 계층과 데이터 링크 계층을 구성하는 대중적인 기술이다. Ethernet 관련 기술은 IEEE에서 IEEE 802.3 으로 표준화되어 있다. NIC NIC(Network Interface Controller) 는 Host와 통신 매체를 연결하는 네트워크 장비이다. Host를 LAN에 연결하기 위한 Hardware이며 NIC에는 MAC Address 가 부여된다. MAC Address MAC Address는 네트워크 장치를 식별하기 위한 주소이다. MAC Address는 크게 앞의 3Byte와 뒤의 3Byte로 구분할 수 있다. MAC 주소: 8C-17-59-AC-DD-16 |- OUI -|- NIC -| OUI OUI(Organizationally Unique Identifier) 는 MAC Address의 앞 3Byte로 제조사를 식별하는 부분이다. MAC Address의 뒤 3Byte에는 NIC에 부여된 고유한 Serial Number가 들어간다. Twisted Pair Cable 구리선을 이용하여 전기 신호를 주고받는 통신 케이블이다. 구리선으로 이루어져 있어 Noise에 민감하다. 이를 줄이기 위해 구리선 주변을 감싸는 차폐 를 사용할 수 있다. STP Braid Shield로 감싼 Cable이다. FTP Foil Shield를 이용해 Noise를 감소시킨 Cable이다. UTP 별도의 차폐 없이 구리선으로 이루어진 Cable이다. 일반적으로 많이 사용하는 LAN Cable이다. Category Twisted Pair Cable은 Category에 따라 분류할 수 있다. 보통 Cat 으로 줄여서 표현한다. Category가 높아질수록 지원 가능한 Bandwidth가 높아져 더 많은 데이터를 전송할 수 있다. 광섬유 케이블 빛을 이용하여 정보를 주고받는 Cable이다. 전기 신호를 이용하는 Cable과 비교하면 빠른 속도로 전송 가능 먼 거리까지 전송 가능 Noise의 영향을 적게 받음 등의 특징이 있다. 대륙 간 네트워크 연결 등에 사용할 수 있지만 유지보수가 어렵다는 특징도 있다. Hub Hub는 물리 계층 장비 이다. 물리 계층에는 주소 개념이 없기 때문에 Hub는 목적지를 식별할 수 없다. 따라서 특정 Port에서 데이터가 들어오면 데이터가 들어온 Port를 제외한 나머지 모든 Port로 전달한다. 각 Port에 연결된 장비가 MAC Address를 확인하고 자신의 주소라면 데이터를 받고 아니라면 버린다. Hub는 Half Duplex 방식으로 통신한다. Half Duplex 송신과 수신을 모두 할 수 있지만 동시에 할 수는 없는 통신 방식이다. 무전기 등이 대표적인 예이다. Full Duplex 송신과 수신을 동시에 양방향으로 수행할 수 있는 방식이다. Collision Domain Collision Domain 은 충돌이 발생할 수 있는 영역이다. Hub에 연결된 모든 Host는 같은 Collision Domain에 속한다. 여러 Host가 동시에 Hub로 신호를 보내면 Collision이 발생할 수 있다. Collision Domain은 작을수록 충돌 가능성이 줄어든다. CSMA/CD CSMA/CD 는 유선 네트워크에서 충돌을 감지하기 위한 방식이다. Carrier Sense 다른 장치가 데이터를 보내고 있는지, 회선을 사용하고 있는지 먼저 확인한다. Multiple Access 여러 Host가 하나의 통신 매체에 접근할 수 있다. Collision Detection Collision이 발생했는지 확인한다. Collision이 발생하면 전송을 중단하고 다른 Host에게 충돌이 발생했음을 알리는 Jam Signal 을 보낸다. 이후 임의의 시간 동안 기다렸다가 다시 전송한다. CSMA/CA CSMA/CA 는 무선 통신에서 Collision을 회피(Collision Avoidance) 하기 위한 방식이다. Repeater Cable을 따라 전송되는 거리가 멀어지면 신호가 약해지거나 왜곡될 수 있다. Repeater 는 약해진 신호를 다시 깨끗한 형태로 재생하여 더 먼 거리까지 데이터를 전달할 수 있도록 해주는 장비이다. Switch Switch는 Hub의 Collision 문제를 해결하기 위한 장비이다. MAC Address를 학습하여 특정 MAC Address를 가진 Host에게만 Frame을 전달할 수 있으며 Full Duplex 통신을 지원한다. MAC Address Table Switch가 Frame을 효율적으로 전달하기 위해 관리하는 MAC Address와 Port의 Mapping 정보 이다. MAC Address Learning Switch에 Frame이 들어오면 다음과 같이 동작한다. Frame의 Source MAC Address 를 확인한다. Source MAC Address와 Frame이 들어온 Port의 관계를 Table에 기록한다. Switch는 Source MAC Address를 학습한다. 일정 시간 동안 사용되지 않은 정보는 Table에서 삭제한다. 즉, MAC Address ↔ Port 관계를 기억하는 것이다. Switch는 Destination MAC Address가 아니라 Source MAC Address를 이용하여 학습한다. Forwarding Frame의 Destination MAC Address를 확인하고 MAC Address Table에서 해당 Port를 찾는다. 목적지가 존재하면 해당 Port로 Frame을 전달한다. Filtering 목적지가 아닌 다른 Port로는 Frame을 전달하지 않는 동작이다. Flooding Destination MAC Address를 알 수 없을 때 수신 Port를 제외한 모든 Port로 Frame을 전달하는 동작이다. 다음과 같은 경우 발생할 수 있다. Switch 부팅 직후 MAC Address Table이 비어 있는 경우 MAC Address Table에 Destination MAC Address가 없는 경우 Broadcast Frame을 수신한 경우 Aging 일정 시간 동안 사용되지 않은 MAC Address 정보는 Table에서 삭제된다. 필요한 경우 다시 학습한다. Broadcast Storm 장애에 대비하기 위해 Switch를 중복으로 연결하면 Switch 사이에 Loop 가 발생할 수 있다. 이 상태에서 Broadcast Frame이 들어오면 Switch는 수신 Port를 제외한 다른 Port로 Frame을 전달한다. Loop가 존재하면 Broadcast Frame이 여러 Switch 사이를 계속 순환하면서 복제되고 Broadcast Traffic이 급격하게 증가한다. 이를 Broadcast Storm 이라고 한다. Switch 중복 연결 -> Loop 발생 -> Broadcast Frame 전송 -> Loop를 따라 Frame이 반복적으로 순환 및 복제 -> Traffic 폭증 -> Broadcast Storm STP STP(Spanning Tree Protocol) 는 Switch를 중복으로 연결했을 때 발생할 수 있는 네트워크 Loop를 방지하기 위해 사용한다. Switch 사이에 여러 경로가 존재하면 일부 경로를 논리적으로 차단하여 Loop가 발생하지 않도록 한다. Ethernet Frame Ethernet에서 데이터를 전달할 때 사용하는 Frame이다. MAC Frame 이라고도 한다. 주요 구성 요소는 다음과 같다. 구성 요소 역할 Preamble 수신 장비가 신호의 타이밍을 맞추기 위한 동기화 SFD Frame의 시작을 알림 Destination MAC Address 목적지 MAC 주소 Source MAC Address 출발지 MAC 주소 Data 전달할 데이터 FCS 오류 확인 Preamble: 7Byte SFD: 1Byte MAC Address: 6Byte MTU MTU(Maximum Transmission Unit) 는 네트워크 인터페이스가 한 번에 전송할 수 있는 최대 데이터 크기이다. 일반적인 Ethernet 환경에서는 1500Byte 를 사용한다. Jumbo Frame 일반적인 Ethernet보다 큰 Frame을 사용하는 방식이다. 약 9000Byte 정도까지 사용할 수 있다. 내부 LAN에서 모든 장비가 Jumbo Frame을 지원한다면 사용할 수 있지만 외부 네트워크로 나갈 때 더 작은 MTU를 사용하는 구간이 존재할 수 있다. VLAN VLAN(Virtual LAN) 은 하나의 물리적인 LAN을 여러 개의 논리적인 LAN 으로 나누어 사용하는 기술이다. 같은 Switch를 사용하더라도 서로 다른 VLAN으로 분리할 수 있다. Port Based VLAN Switch의 Port를 기준으로 VLAN을 결정하는 방식이다. 특정 Port에 VLAN을 할당하고 해당 Port에 연결된 Host를 해당 VLAN에 포함시킨다. VLAN Trunking 여러 VLAN Switch를 효율적으로 연결하기 위해 사용하는 기술이다. Switch 사이의 Trunk Port 하나를 통해 여러 VLAN의 Frame을 전달할 수 있다. IEEE 802.1Q 일반 Ethernet Header에는 VLAN ID를 저장할 공간이 없다. 따라서 Frame이 어느 VLAN에 속하는지 구분하기 위해 IEEE 802.1Q 를 이용하여 VLAN ID를 추가한다. IP 물리 계층과 데이터 링크 계층만으로는 LAN을 넘어 다른 네트워크까지 데이터를 전달하기 어렵다. 다른 네트워크까지 데이터를 전달하기 위해 IP Address와 Router 를 사용한다. MAC Address → 물리 주소 IP Address → 논리 주소 IPv4 IPv4는 32bit = 4Byte 로 이루어진 주소이다. 8bit씩 네 부분으로 나누며 각각을 Octet 이라고 한다. 각 Octet은 0~255 의 10진수로 표현한다. 예를 들어 다음과 같이 표현한다. 192.168.10.10 Network ID와 Host ID IP Address는 Network 부분과 Host 부분 으로 나누어 생각할 수 있다. Network ID Host가 어느 네트워크에 속하는지를 나타낸다. Host ID 해당 네트워크 안에서 어떤 Host인지를 나타낸다. 즉, Network ID → 어느 네트워크인가 Host ID → 그 네트워크 안에서 어떤 Host인가 Subnet Mask Subnet Mask 는 IP Address에서 Network 부분과 Host 부분을 구분하기 위해 사용한다. 예를 들어 192.168.10.0/24 에서 /24 는 앞의 24bit가 Network 부분이라는 의미이다. /24 = 255.255.255.0 과 같이 표현할 수 있다. Network Address와 Broadcast Address Network Address 해당 Network 자체를 나타내는 주소이다. Host 부분을 모두 0 으로 만든 주소이다. Broadcast Address 해당 Network의 모든 Host를 대상으로 데이터를 전달할 때 사용하는 주소이다. Host 부분을 모두 1 로 만든 주소이다. Subnetting Subnetting 은 하나의 Network를 여러 개의 작은 Network로 나누는 것이다. FLSM
What RADAR observed and classified to build this opportunity. It is what the source published, not a verification that the offer is still active.
[TIL 3주] 네트워크 개요. 네트워크 기본 구조 인터넷과 웹 인터넷 ≠ 웹 인터넷은 여러 네트워크를 연결한 네트워크의 네트워크 이다. 호스트 호스트는 네트워크의 가장자리에 위치하는 노드이다. 서버(Server) : 어떠한 서비스를 제공하는 호스트 클라이언트(Client) : 서버에게 서비스를 요청하고 서버의 응답을 제공받는 호스트 네트워크 장비 호스트 간에 주고받는 정보가 거치는 중간 노드이다. 대표적으로 다음과 같은 장비가 있다. 이더넷 허브 스위치 라우터 공유기 통신 매체 각 노드를 연결하는 간선(Link)이다. 유선 매체 무선 매체 메시지 통신 매체로 연결된 노드들이 서로 주고받는 정보이다. 예를 들어 웹 페이지, 파일, 메일 등이 있다. 범위에 따른 네트워크 분류 네트워크는 범위에 따라 다음과…
Open source