책/CS 전공 지식 노트

2장 네트워크_네트워크기초

뉴_민 2024. 10. 23. 15:55

네트워크의 기초

#노드 링크가 연결 # 리소스가 공유하는 집함

 

노드란 서버, 라우터, 스위치 등 네트워크 장치 의미

링크는 유선 또는 무선 의미

좋은 네트워크 : 많은 처리량/짧은 지연 시간 /적은 장애 빈도/좋은 보안

 

# 처리량과 지연시간

 throughput은 링크내 성공적 전달 된 데이터 양/ 얼만큼의 트래픽을 처리했는지 / 단위bps  bits per sec

많이 접속시 트래픽, 네트워크 장치간의 대역폭, 중간발생에러, 하드웨어 스펙에 영향받음

트래픽이 많아졌다= 흐르는 데이터가 많다

처리량이 많아졌다 = 처리되는 트래픽이 많아졌다.

대역폭 : 주어진 시간동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수

latency는 요청이 처리되는 시간/ 어떤 메시지가 두 장치 사이를 왕복하는 시간

매체 타입 유무선/ 패킷 크기/ 라우터의 패킷처리 시간에 영향받음

 

# 네트워크 토폴로지

network topology는 노드와 링크의 배치방식 연결형태

tree topology 는 계층형 토폴로지 : 노드 추가 삭제가 쉬움/ 특정노드에 트래픽 집중시 하위 노드에 영향

bus topology 는 중앙 통신회선 하나에 여러개 노드가 연결되어 공유 / 근거리통신망LAN에 사용/ 신뢰성 우수/설치비용 적음

노드 추가 삭제쉬움/ 스푸핑 가능한 문제

Spoofing은 LAN상에서 송신부의 패킷을 송신과 관련없는 다른 호스트에 가지 않도록 하는 스위칭 기능 마비시키거나 속여서 특정 노드에 해당 패킷 오도록 처리

star topoloty는 중앙에 있는 노드에 모두 연결된 네트워크 구성/ 노드를 추가하거나 에러를 탐지하기 쉽고 패킷의 충돌 발생 가능성 적음/ 장애노드가 중앙 노드가 아니면 다른 노드에 영향을 거의 안끼침 / 중앙 노드 장에시 전체 네트워크 사용 못함/설치비용 고가

ring topology 는 각각 노드가 양옆 두 노드와 연결하에 전체적인 고리처럼 하나의 연속된 길을 통해 통신하는 망 구성 방식

노드에서 노드로 데이터 이동/고리모양의 길을 통해 노드가 패킷을 처리/ 노드 수가 증가되어도 네트워크상 손실 거의없고 충돌가능성 적음/고장 발견이 쉬움/ 구성 변경이 어렵고 회선에 장애가 발생하면 전체 네트워크에 영향

mesh topology 는 망형 토폴로지/ 그물망처럼 연결/ 한 단말장치에 장애가 발생해도 여러 경로가 존재하므로 네트워크 계속사용가능/ 트래픽 분산 처리 가능/ 노드 추가가 어려움/ 구축비용과 운용비용이 고가다

 

# 병목 현상

네트워크 토폴로지,구조가 중요한 이유는 병목현상 찾는 기준이 되기 때문이다.

예를 들면 병목현상으로 지연시간 길어짐

짧게 만들려고 대역폭 크게 설정 해도 성능 개선X > 토폴로지를 확인해서 >서버와 서버 간 그리고 게이트 웨이로 이어지는 회선을 추가해서 해결

 

#네트워크 분류(규모)

LAN(Local Area Network) 은 사무실과 개인적으로 소유 가능한 규모 / 거리 통신망으로 같은 건물이나 캠퍼스 같은 좁은 공감/ 전송속도가 빠르고 혼잡하지않음

MAN(Metropolitian Area Network) 서울시 등 시 정도 크기/ 대도시 지역 네트워크 도시같은 넓은지역/ 전송속도는 평균이고 LAN보다 혼잡

WAN(Wide Area Network) 광역 네트워크를 의미하며 국가 또는 대륙 같은 더 넓은 지역에서 운영/ 전송속도는 낮으며 MAN보다 혼잡

 

#네트워크 성분 분석 명령어

애플리케이션 코드 상에는 문제가 없는데 사용자가 서비스로부터 데이터를 가져오지 못하는 상황이 발생되기도 하며 이는 네트워크 병목현상일 가능성이 있습니다. 네트워크 병목현상의 주된 원인은 네트워크 대역폭, 네트워크 토폴로지, 서버CPU,메모리사용량, 비효율적인 네트워크 구성 등이 있습니다. 

네트워크 관련 테스트와 네트워크 무관 테스트를 통해 ' 네트워크로 발생한 문제'인지 확인 후 성능 분석을 해야함

 

ping(Packet INternet Groper)은 네트워크 상태를 확인하려는 대상 노드를 향해 일정 크기의 패킷을 전송하는 명령.

해당 노드의 패킷 수신상태와 도달하기까지의 시간을 알 수 있음. 해당 노드까지 네트워크 연결이 되는지 확인

ping은 TCP/IP 프로토콜 중에 IMCP프로토콜을 통해 동작하며, 이 때문에 IMCP 프로토콜을 지원하지 않는 기기를 대상으로는 

실행할 수 없거나, 네트워크 정책 상 IMCP나 traceroute를 차단하는 대상의 경우 ping테스팅은 불가능합니다,

- ping[IP주소 또는 도메인주소]로 실행한다. ping www.google.com  -n 12  /12번의 패킷을 보내고 받는 명령어

 

netstat 접속되어 있는 서비스들의 네트워크 상태를 표시. /네트워크 접속, 라우팅 테이블, 네트워크 프로토콜 등 리스트.

주로 서비스의 포트가 열려있는지 확인

 

nlookup  DNS에 관련된 내용을 확인하기 위해 쓰는 명령어. 특정 도메인에 매핑된 IP확인을 위해 사용

 

tracert traceroute 목적지 노드까지 네트워크 경로를 확인할 때 사용하는 명령어. 목적지 노드까지 구간들 중 어느 구간에서 응답시간이 느려지는지 확인가능

 

ftp를 통해 대형파일을 전송하여 테스팅 / tcpdump를 통해 노드로 오고가는 패킷을 캡처하느는 등의 명령어가 있으며

네트워크 분석프로그램으로는 wireshark, netmon등 

 

# 네트워크 프로토콜 표준화

네트워크 프로토콜은 다른 장치들끼리 데이터를 주고받기위해 설정된 공통된 인터페이스.

기업이나 개인이 발표해서 정하는 것이 아니라 IEEE 또는 IETF라는 표준화 단체가 정함.

 

IEEE802.3은 유선 LAN프로토콜로 유선으로 LAN을 구축할 떄 쓰이는 프로토콜

예를들어 웹 접속시 쓰이는 HTTP가 있다. 서로 약속된 프로토콜인 HTTP를 통해 노드들은 웹서비스 기반 데이터를 주고받을수 있다.