컴퓨터 네트워크 1주차 컴퓨터 네트워크와 인터넷
네트워크 개요
네트워크란?
컴퓨터 간에 정보를 주고받을 수 있도록 연결하는 통신망
인터페이스
- 시스템과 전송 매체의 연결 지점에 대한 규격
- usb 등
프로토콜
- 전송매체 간에 데이터를 교환하기 위한 통신 규칙
네트워크
- 프로토콜을 사용하여 데이터를 교환하는 시스템의 집합
인터넷 프로토콜: IP
시스템
시스템 이란?
- 정보를 처리하고 전송 매체를 통해 데이터를 주고받음
노드
- 네트워크 구축에 사용
- 가장 일반적인 용어
Host 호스트
- 컴퓨터 네트워크를 구축하는 노드
- 서버, 클라이언트
- 호스트는 다른 호스트의 서버인 동시에 또 다른 호스트에 요청을 보내는 클라이언트일 수 있다.
OSI 7계층 모델
- 물리 계층(Physical Layer)
- 물리적으로 데이터를 전송하는 역할을 수행
- 전선, 광케이블, 와이파이 등
- 데이터 링크 계층(Data Link Layer)
- 물리적 전송 오류 해결
- 일반적인 상황에서 발생하는 수많은 오류 처리
- 네트워크 계층(Network Layer)
- 올바른 전송 경로 선택
- 혼잡 제어 역할 포함
- 전송 계층(Transport Layer)
- 송·수신 프로세스 사이의 연결 기능 지원
- 호스트와 호스트 사이의 연결을 지원
- 세션 계층(Session Layer)
- 대화 개념을 지원하는 상위의 논리적 연결을 지원
- 사용자의 정보를 이용하여 계층을 만듦
- 표현 계층(Presentation Layer)
- 데이터 표현의 방법
- 응용 계층(Application Layer)
- 다양한 응용 환경을 지원
- 일반적인 어플리케이션의 표현과 맞닿아 있음
물리 계층부터 상위 계층으로 갈수록 데이터가 많아지므로 데이터를 압축함
상위 계층: 응용, 표현, 세션, 전송
하위 계층: 네트워크, 데이터 링크, 물리
네트워크에서 연결 간의 설정 부분은 보통 하위 계층에서 처리 (hw)
상위 계층은 프로세스 연결 (sw)
프로토콜
- 프로토콜의 기능
- 오류제어, 흐름제어, 혼잡제어
- 주소 지정, 동기화, 캡슐화, 오류 제어, 데이터 분할 및 조합, 연결 제어 등
랜카드 드라이버: 데이터 링크 레이어
tcp: 전송 프로토콜
ftp 클라이언트: 소프트웨어
데이터 단위
- 전송 계층
- tcp 세그먼트
- udp 데이터그램
- 네트워크 계층
- npdu 패킷
- 데이터 링크 계층
- dpdu 프레임
게이트웨이
리피터
- 물리 계층 지원
- 신호 증폭
브리지
- 물리 계층과 데이터링크 계층의 연결을 도움
라우터
- 물리, 데이터, 네트워크 계층을 지원하는 하드웨어
- 데이터링크 이상의 네트워크 계층 지원
- 노드를 찾아가기 위한 hw
네트워크 주소
IP 주소
- ipv6도 있지만 ipv4를 많이 사용
호스트 이름->URL
- 호스트
- 단체 이름
- 단체 종류
- 국가 도메인
- 호스트 이름->DNS->ip주소
네트워크 모델
계층 구조
모듈화
- 장점: 오류격리 등등
- 단점: 모듈이 없는 상황에 전체 시스템 중 하나가 바뀌면 한꺼번에 고쳐야함
- 함수와 같은 개념
게층 구조의 장점
- 전체구조 이해하기쉬움
- 설계 및 구현 용이
- 독립성
- 복잡한 작업 손쉽게 구현
- 인터페이스 프로토콜 단순화
- 표준화
프로토콜 설계시 고려사항
- 프로토콜 설계시 계층에 알맞은 주소 표현 필요
- 주소 표현이 달라서 설계가 어려움 (데이터 링크 계층: 맥어드레스하드웨어의 주소, 네트워크계층: tcp/ip계층 인터넷 프로토콜 주소 사용)
- 서로를 구분하는 것이 기본적인 역할
- 주소의 표현 설정 선행 필요
- 일대다통신지원(브로드캐스팅, 멀티캐스팅)
- 오류 제어
- 데이터의 변형, 분실
- 복구하기 위한 기능이 프로토콜에 필요
- 흐름 제어
- 수신 호스트의 버퍼 처리 속도보다 송신 호스트의 데이터 전송 속도가 더 빠른 경우
- 데이터 분실 오류 발생
- 연결형 서비스를 이용하는 3단계
- 연결설정, 데이터 전송, 연결 해제
- 비연결형 서비스
- 연결을 설정하지 않음
- 프로토콜이 잘 구성되어 있다면 제대로 동작한다
- 연결을 설정하지 않음
인터페이스: 상하위 계층 사이의 접속 방법
서비스: 상위 게층이 하위 계층을 사용하는 방법
계층별로 필요한 추가 정보는 헤더에 담음
라우터: 중개노드
요즘은 표현+응용 계층 통틀어 처리
ARP: IP->MAC
RARP: MAC->IP
ICMP: 컨트롤메시지전달
네트워크 교환 방식
- 회선 교환 방식
- 양방향 전설 연결
- 고정된 대역폭의 전송률 지원
- 전송 전 미리 경로 설정
- 구조 단순
- 장점: 네트워크 지연이 발생하지 않을 가능성이 높음, 고정된 대역폭 설정
- 단점: 전용 채널이 사용되지 않는 동안 채널이 낭비 됨
- 양방향 전설 연결
- 패킷 교환 방식
- 네트워크 구성에서의 포인트에 패킷을 전달
- 가변적 대역폭의 전송률 지원
- 구조 복잡
- 비음성 데이터를 송수신하기 위해 설계된 기술
- Best Effort Service
- 최적의 경로를 선택, 패킷마다 다른 경로로 전달
- 데이터는 패킷으로 나뉘고 각 패킷이 독립적인 라우팅을 거쳐 목적지에 도달
- 호스트 무제한 수용 (모두 처리하지 못하는 상황이 발생)
- 패킷의 도착 지연 시간이 다양함
- 정적 경로 동적 경로 등 형태에 따라 상황을 고려해야 함
- 장점: 채널을 효과적으로 공유 / 특정 패킷을 여러 목적지로 전달 가능 / 오류.흐름 제어로 정확한 데이터 전송
- 단점: 오류제어, 흐름제어, 재정렬에 기능적인 시간이 필요함/ 패킷이 몰리면 서비스가 되지 않음
- 프레임, 셀 릴레이 교환 방식
- 패킷+회선
- 데이터 전송 속도 향상
- 네트워크 구조를 적절하게 함
- 프레임 릴레이
- 동일한 속도의 전송 매체로 고속 데이터 전송을 지원할 수 있도록 고안된 기술
- 데이터 링크 계층의 기능을 단순하게 설계
- 셀 릴레이
- ATM(Asyncronous Transfer Mode) 방식
- 회선 교환과 패킷 교환 방식의 장점을 모아서 고안
- 오류 제어에 대한 오버헤드 최소화
- 셀이라는 고정 크기의 패킷을 사용
- 속도를 올리고 안정성을 확보
<---단순 ------------ 구조 ------------ 복잡--->
회선 교환 - 셀 릴레이 - 프레임 릴레이 - 패킷 교환
<---고정------------ 비트율 ------------ 가변--->
네트워크 구성 형태
메시형
고비용 고신뢰 소규모네트워크
스타형
비용 저렴하고 선이 적음
hub 고장나면 전체 네트워크에 영향
single point failure
트리형
허브+허브
허브만 준비되면 많은 컴퓨터를 쉽게 연결할 수 있지만 허브가 고장나면 모든 노드 접속 불가
버스형
장점: 통신 회선에 추가 삭제가 간단함
단점: 통신 회선이 하나라 성능이 떨어지고 통신 회선의 특정 부분이 고장나면 전체 네트워크가 분리됨
링형
장점: 대규모 네트워크 구성
단점: 하나만 분리되거나 끊어져도 전체 네트워크 성능 하락
하이브리드형
실제 네트워크 구성
대규모- 링형
중규모- 버스형
소규모- hub
네트워크 분류
근거리 통신망(LAN)
Local Area Network
- 가까운 기기를 회선으로 연결
- 버스 형태
- 브로드캐스팅도시 통신망 (MAN)Metropolitan Area Network
- 도시 규모의 거리에 있는 컴퓨터를 통신 회선으로 연결
광역 통신망 (WAN)
Wide Area Network
- 국가 이상의 넓은 지역 지원
- 점대점으로 연결
- 교환 기능이 반드시 필요 교환기능이 포함된 node가 중요
- 전송 매체 비용 많이 듦
인터네트워킹
- 둘 이상의 네트워크를 연결하는 기능
- 라우터: 네트워크를 연결하는 장비. 일반적으로 3계층 기능을 수행
- 게이트웨이
- 라우터: 네트워크 계층 지원
- 브리지: 데이터 링크 계층 지원
- 브리지에 연결된 LAN의 종류만큼 MAC/물리 계층 처리
- 연결되는 랜이 다른 종류인 경우 프레임 해석, 변환 등의 복잡한 작업 필요
- 서로 다른 랜을 붙여주는 역할을 함
- 리피터: 물리 계층 지원
- 신호 증폭
IP 인터네트워킹
- 패킷 중개 기능이 IP 프로토콜을 통해 진행
- 양쪽 MAC 계층이 다를 경우 패킷 변환 기능 필요
- 필요 시 패킷 분할과 병합 과정도 수행
서비스 품질
- QoS(Quality of Service) 특징
- 연결 설정 지연(Connection Establishment Delay)
- 연결 설정 실패 확률(Connection Establishment Failure Probability)
- HTTP 요청을 웹브라우저를 통해 보냈지만, 10초 후 연결시 해당 부분들 고려하여 품질 확인
- 전송률(Throughput), 전송 지연(Transit Delay)
- 오류율(Residual Error Rate), 우선순위(Priority)인터넷에서의 QoS
◆ IP 프로토콜
⊙ 모든 패킷에 동일한 기준을 적용
⊙ 데이터 도착 순서를 100% 보장하지 않음
◆ IP 프로토콜에서의 QoS 지원
⊙ 서로 다른 QoS 기준을 제시
• 각 라우터에서 이를 처리함
◆ 전송 데이터의 종류별 특징
⊙ 영상 정보
• 대용량의 실시간 전송
• 전송 오류에 대해 관대함
⊙ 컴퓨터 데이터
• 실시간 전송 불필요
• 전송 오류에 대해 민감함
인터넷 딜레이 측정 방법
◆ Traceroute
⊙ 하나의 컴퓨터에서 원하는 목적지까지 가는 중간에 멈추는 노드들에게 3번씩 프로브를 보내고딜레이를 평균내서 보여주게 됨
패킷 손실(Packet Loss)
◆ 큐에 담지 못하는 패킷들에 의해 발생
◆ 발생 원인
⊙ 노드가 한꺼번에 네트워크 사용
⊙ 혼잡한 상황 발생
◆ 혼합 제어 알고리즘을 통해 패킷 로스 방지
처리량(Throughput)
◆ 얼마나 빠르게 보낼 수 있는지에 대한 성능 지표
⊙ 특정 시간의 지표, 평균 지표
◆ 각 링크 별로 달라짐
⊙ 보내는 쪽 < 받는 쪽
⊙ 보내는 쪽 > 받는 쪽
◆ 보내는 쪽의 처리량이 큰 경우
⊙ 라우터에서 드랍이 많이 발생하게 됨 → Bottleneck 발생
• Bottleneck 해소를 위해 흐름 제어가 필요함