42seoul:: < NetPractice > 네트워크 정복

jahlee·2023년 6월 20일
0

개인 공부

목록 보기
13/23
post-thumbnail

Subject 링크

네트워크란 ??

기기들 끼리 서로 통신하기 위한 망이 그물처럼 짜여있다해서 네트워크란 이름이 붙었다.
이전에는 한선으로 통신을 하는것이 비용이 저렴하여 그렇게 사용하였지만, 선에 문제가 생겨 통신이 먹통이 된다는 문제점이 있기 때문에 현대에는 한선에 문제가 생겨도 정보를 전달할 수 있도록 그물형태로 진화되었다.

이더넷 ??

이더넷은 컴퓨터 네트워크 기술의 하나로, 일반적으로 LAN, MAN 및 WAN에서 가장 많이 활용되는 기술 규격이다.

LAN
근거리 통신망, 로컬 영역 네트워크(Local Area Network), 구내 정보 통신망은 네트워크 매체를 이용하여 가까운 지역을 한데 묶는 컴퓨터 네크워크이다.

MAN
도시권 통신망(Metropolitan Area Network)은 큰 도시 또는 캠퍼스에 퍼져 있는 컴퓨터 네트워크이다. LAN과 WAN의 중간 크기.

WAN
광역 통신망(Wide Area Network)은 드넓은 지리적 거리/장소를 넘나드는 통신 또는 컴퓨터 네트워크이다. 광역 통신망을 종종 전용선과 함께 수성된다고 한다. 인터넷은 광역 통신망으로 간주 될 수 있다.

IP 와 MAC 주소

IP

특적 기기를 식별하기위해 32비트로 이루어진 주소를 부여하는데 이를 IP라고 부른다. 약 43억 개의 장비를 식별할 수 있게 만들어졌는데 IP가 모자라게 되는 현상이 생겨서 네트워크 주소를 낭비없이 효율적으로 사용하기 위해 서브넷 마스크라는 것을 만들었다. IP 주소는 ISP(Internet Service Provider)가 부여한다. ISP는 SKT, KT, LG유플러스 등 통신 사업자를 의미한다. 결국 IP주소는 소프트웨어 기반으로 생성된 논리적 주소이다.

사설 IP 주소

인터넷에서 공인된 IP 주소를 사용하지 않고, 사적인 용도로 임의 사용하는 IP 주소

  • Class A 규모 : 10.0.0.0 ~ 10.255.255.255 (10.0.0.0/8)
  • Class B 규모 : 172.16.0.0 ~ 172.31.255.255 (172.16.0.0/12)
  • Class C 규모 : 192.168.0.0 ~ 192.168.255.255 (192.168.0.0/16)

MAC

MAC 주소는 NIC(Network Interface Card)가 만들어질 때 기록되는 고유한 주소이다. NIC는 통상 LAN 카드를 말하며 컴퓨터가 출고될 때 기본적으로 탑재된다.
결국 MAC 주소는 하드웨어 기반으로 생성된 물리적 주소하 생각하면된다.

컴퓨터간의 통신이 발생하면 MAC주소는 네트워크에 있는 고유한 컴퓨터를 식별하는 데 사용된다. 반면 IP주소는 네트워크에 참여한 컴퓨터와 네트워크의 연결 상태를 식별하는데 사용된다. MAC 주소는 미디어 연결 주소라고 부르고, IP 주소는 인터넷 프로토콜 주소라고 부른다.

MAC 주소로 데이터를 보내는 것은 네트워크에서 데이터를 보내는 안전한 방법이다. IP 주소는 쉽게 변경할 수 있지만 MAC 주소는 변경하기 어렵기 때문에 MAC 주소로 데이터를 보내는 것이 IP 주소로 데이터를 보내는 것보다 더 안전합니다.

IPv4 & IPv6

IPv4는 인터넷 프로토콜의 4번째 판이며, 전세계적으로 사용된 첫번째 인터넷 프로토콜이다. IPv4는 패킷 교환 네트워크 상에서 데이터를 교환하기 위한 프로토콜이다. 데이터가 정확하게 전달될 것을 보장하지 않고, 중복된 패킷을 전달하거나 패킷의 순서를 잘못 전달할 가능성도 있다. 데이터의 정확하고 순차적인 전달은 그보다 상위 프로토콜인 TCP에서(그리고 UDP에서도 일부) 보장한다.

A 클래스

A Class는 최고위의 Class로서, 1~126 (0, 127 예약됨)범위의 IP주소를 가진다. 두 번째, 세 번째 그리고 네 번째 단위의 세 숫자는 A Class가 자유롭게 네트워크 사용자에게 부여가 가능한 아이피이다.

B 클래스

B Class는 두 번째로 높은 단위의 Class로써, 아이피 구성에서 첫 번째 단위의 세 숫자는 128 - 191 가운데 하나를 가지며, 두 번째 단위의 세 숫자는 B Class가 접속할 수 있는 네트워크를 지시한다.

C 클래스

C Class는 최하위의 Class로서, 아이피 구성에서 첫 번째 단위의 세 숫자는 192 -223 가운데 하나를 가지며, 두 번째와 세 번째 단위의 세 숫자는 C Class가 접속할 수 있는 네트워크를 지시한다. C Class가 자유로이 부여할 수 있는 아이피는 마지막 네 번째 단위의 254개이다.

IPv6(IP 버전 6)는 IETF(Internet Engineering Task Force)가 정의한 최신 세대의 인터넷 프로토콜 IP 이다. 최초의 안정적인 IP 버전은 IPv4였다. IPv6는 최종적으로 IPv4를 대체하기 위한 것이지만, 현재 둘은 꼭 맞물려있으며 대부분의 엔지니어는 두 가지를 병행하고 있다.

TCP & UDP

TCP (Transmission Control Protocol)

TCP가 연결 지향 방식이라는 것은 패킷을 전송하기 위한 논리적 경로를 배정한다는 말이다. 그리고 3-way handshaking과정은 목적지와 수신지를 확실히 하여 정확한 전송을 보장하기 위해서 세션을 수립하는 과정을 의미한다. TCP가 이러한 특징을 지니는 이유는 연결형 서비스로 신뢰성을 보장하기 때문이다. 그래서 3-way handshaking의 과정도 사용하는 것이고, 데이터의 흐름제어나 혼잡 제어와 같은 기능도 한다. 하지만 이러한 기능때문에 UDP보다 속도가 느리다.(이러한 기능은 CPU를 사용하기 때문에 속도에 영향을 주는 것이다.)
그렇기에 TCP는 연속성보다 신뢰성있는 전송이 중요할 때에 사용하는 프로토콜로 예를 들면 파일 전송과 같은 경우에 사용된다.

3-way handshaking

TCP/IP 네트워크에서 3-way handshake는 TCP 연결을 설정하는 데 사용되는 프로세스이다. 3-way handshake는 세 단계로 구성된다.

  1. SYN: 클라이언트는 서버에 SYN 패킷을 보낸다.
  2. SYN-ACK: 서버는 클라이언트에 SYN-ACK 패킷을 보낸다.
  3. ACK: 클라이언트는 서버에 ACK 패킷을 보낸다.

SYN 패킷

TCP 연결을 요청하는 데 사용되는 패킷이다. SYN 패킷에는 클라이언트의 IP 주소와 포트 번호가 포함되어 있다.

ACK 패킷

TCP 연결을 승낙하는 데 사용되는 패킷이다. ACK 패킷에는 서버의 IP 주소와 포트 번호와 함께 클라이언트의 SYN 패킷에 대한 승낙이 포함되어 있다.

3-way handshake가 완료되면 TCP 연결이 설정되고 클라이언트와 서버는 데이터를 전송할 수 있다.

TCP 서버의 특징

  1. 서버소켓은 연결만을 담당한다.
  2. 연결과정에서 반환된 클라이언트 소켓은 데이터의 송수신에 사용된다.
  3. 서버와 클라이언트는 1대1로 연결된다.
  4. 스트림 전송으로 전송 데이터의 크기가 무제한이다.
  5. 패킷에 대한 응답을 해야하기 때문에(시간 지연, CPU 소모) 성능이 낮다.
  6. Streaming 서비스에 불리하다.(손실된 경우 재전송 요청을 하므로)

UDP (User Datagram Protocol)

UDP를 해석하면 데이터를 데이터그램 단위로 처리하는 프로토콜이라 생각할 수 있다.
여기서 데이터그램이란 독립적인 관계를 지니는 패킷이라는 뜻으로, UDP의 동작방식을 설명하자면 다음과 같다.
TCP와 달리 UDP는 비연결형 프로토콜으로, 연결을 위해 할당되는 논리적인 경로가 없다.
그렇기 때문에 각각의 패킷은 다른 경로로 전송되고, 각각의 패킷은 독립적인 관계를 지니게 되는데 이렇게 데이터를 서로 다른 경로로 독립적으로 처리하게 되고, 이러한 프로토콜을 UDP라고 한다.

UDP는 비연결형 서비스이기 때문에, 연결을 설정하고 해제하는 과정이 존재하지 않는다. 서로 다른 경로로 독립적으로 처리함에도 패킷에 순서를 부여하여 재조립을 하거나 흐름 제어 또는 혼잡 제어와 같은 기능도 처리하지 않기에 TCP보다
속도가 빠르며 네트워크 부하가 적다는 장점이 있지만 신뢰성있는 데이터의 전송을 보장하지는 못한다. 그렇기 때문에 신뢰성보다는 연속성이 중요한 서비스 예를 들면 실시간 서비스(streaming)에 자주 사용된다.

UDP 서버의 특징

  1. UDP에는 연결 자체가 없어서(connect 함수 불필요) 서버 소켓과 클라이언트 소켓의 구분이 없다.
  2. 소켓 대신 IP를 기반으로 데이터를 전송한다.
  3. 서버와 클라이언트는 1대1, 1대N, N대M 등으로 연결될 수 있다.
  4. 데이터그램(메세지) 단위로 전송되며 그 크기는 65535바이트로, 크기가 초과하5. 면 잘라서 보낸다.
  5. 흐름제어(flow control)가 없어서 패킷이 제대로 전송되었는지, 오류가 없는지 확인할 수 없다.
  6. 파일 전송과 같은 신뢰성이 필요한 서비스보다 성능이 중요시 되는 경우에 사용된다.

서브넷 마스크

서브넷 마스크란 ip주소를 네트워크 주소와 호스트 주소로 나누는 것으로, 비트의 앞부분부터 1로 채워서 사용하고 255.255.0.0 혹은 /16 과같이 표현해준다. 네트워크 주소는 하나의 로컬 네트워크를 정의하는 부분이고, 호스트 주소는 로컬 네트워크 내의 단말기를 지칭한다.

허브 ??

통상적으로 허브는 더비 허브와 스위치 허브로 나눠진다. 일반적으로 더미 허브를 허브라 칭하고, 스위치 허브를 스위치라고 말한다.
허브는 크게 두가지 기능으로 많이 사용된다.

1. 리피터

전기적인 신호를 증폭시켜 들어온 데이터를 재전송하고 LAN의 최대 전송길이도 연장되며, 접속 할 수 있는 장비수도 많아지게 된다.

2. 멀티포트

여러개의 디바이스를 연결할 수 있는 기능으로 1개의 포트에 한대의 디바이스가 할당 된다.

허브는 단순한 분배 중계기에 불과하며 IP를 할당하는 기능은 없고 단순히 디바이스 수에 따라 데이터 전송 대역을 분리하는 역할만 한다. 예를들어, 10Mbps를 제공하는 이더넷에 8포트 허브로 PC를 연결시킬 경우 각 PC는 1.25Mbps의 대역폭만을 사용하게 되는 것이다.
허브로 연결된 네트워크에서 하나의 디바이스에서 전송된 데이터 프레임을 허브로 연결된 모든 디바이스에게 전부 전송하는 플러딩(flooding)이 발생한다. 결과적으로 충돌이 많이 발생하여 하나의 허브에는 많은 디바이스를 연결할 수 없다. 동일한 이유로 보안성 또한 떨어진다. 지금은 잘 쓰이지 않는 구시대 장비라고 볼 수 있다.

스위치 ??

스위치는 네트워크 단위들을 연결하는 통신 장비로서 소뷰모 통신을 위한 허브보다 전송 속도가 개선된 장치이다.
기본적으로 이더넷 네트워크에서 여러 대의 네트워크 장비를 연결하는 장치이다.

스위치는 자신에게 연결된 디바이스들의 MAC 주소와 포트가 기록된 MAC 주소 테이블을 가지고 있다. 따라서 패킷이 자신에게 오면 그 것의 목적지가 어디인지 파악하여 그 디바이스에게 패킷을 보내기 때문에 트래픽이 훨씬 효율적이다. 또한, 스위치는 데이터의 전송 에러 등을 복구해주는 기능들을 가진다.
다만, 스위치는 자신의 테이블에 없는 목적지를 가진 패킷이 오면 해당 패킷을 연결된 모든 장치에 포워딩하는데, 이 경우에는 허브와 동일한 동작을 하는 것이다.

라우터 ??

라우터는 컴퓨터 네트워크 간에 데이터 패킷을 전송하는 네트워크 장치이다. 패킷의 위치를 추출하여, 그위치에 대한 최적의 경로를 지정하며, 이경로를 따라 데이터 패킷을 다음 장치로 전달한다. 이때 최적의 경로는 일반적으로는 가장 빠르게 통신이 가능한 경로이므로, 일반적으로는 최단 거리일 수 있지만, 돌아가는 경우라도 고속의 전송로를 통하여 전달이 될 수도 있다. 간단히 말해, 서로 다른 네트워크 간에 최적의 경로를 찾아내는 알고리즘을 활용해 중계 역할을 해주는 장치다. 라우터는 게이트웨이의 역할을 수행하기도 한다.

공유기 ??

ISP(Internet Service Provider) 업체에서 제공하는 한 개의 인터넷 IP Address로 여러 대의 컴퓨터, 노트북, IP폰 등이 인터넷을 공유할 수 있는 기능을 제공한다.

공유기를 사용하면 ISP에서 할당받은 하나의 공인 IP Address를 내부 네트워크에서 여러 개의 IP 주소로 변환 사용가능하기 때문에, 한 대의 컴퓨터에서만 인터넷 접속이나 외부 네트워크와 연결되던 것을 내부 IP 값으로 최대 253대까지 동시에 인터넷 접속이 가능하다. 공유기에는 보통 1개의 WAN 포트와 4개의 LAN 포트가 있는데, 외부에서 들어오는 공인 IP의 LAN 선을 WAN 포트에 연결하고 나머지 LAN 포트들은 내부 IP (ex 192.168.0.~)로 사용할 장치들에 LAN 선을 연결하는 것이 일반적인 사용법이다. 4대 이상의 PC가 하나의 인터넷 IP를 공유하기 위해서는 인터넷 공유기와 스위칭 허브를 이용하면 된다.

컴퓨터 네트워크에 관한 설명 링크 주석 (위키백과)

0개의 댓글