Introduction

jubogang·2024년 1월 7일
1

데이터통신

목록 보기
1/1

학교에서 수강한 데이터 통신 수업내용을 정리하였습니다. 오개념이 있을 시 알려주시면 감사하겠습니다!

1.1 Data Communications

Data communications 란 어떤 형태의 송신 미디어를 통해 두 개의 디바이스들 사이에서의 데이터의 교환이다

데이터 커뮤니케이션 시스템은 5개의 요소를 가진다

  1. Sender
  2. Receiver
  3. 전달할 메세지
  4. 송신 미디어
  5. Protocol (통신규약)

Data Flow

두 개의 디바이스 사이 커뮤니케이션은

a. 한 쪽으로만 전달되거나 (simplex)

b. 한 번에 한 방향으로 양방향으로 전달되거나 (half-duplex)

c. 양방향 (full-duplex)

세가지 타입이있다.

1.2 Networks

Network : 통신이 가능한 기기들의 상호 접속

네트워크의 기준

Performance(성능)

Reliability (신뢰성)

Security(보안)

Physical Structures

Link는 디바이스들을 연결한다

네트워크 연결방식들의 종류
topology - 연결방식

  1. fully-connected mesh topology

fully-connected : 모든 정점들에 대해 한 정점에서 나머지 정점까지 바로 연결되어있는 경우

mesh : 막 연결

  1. star topology

hub에 각각의 디바이스들이 직접 연결되어 있다.

  1. bus topology

버스가 노선을 따라 움직이는 것처럼 노선을 따라 송신한다. 그러나 한 곳이 끊기면 신호가 끊긴 부분에서 다시 돌아가 들어오는 신호와 섞이며 전체 노선에 통신이 장애가 생기는 문제가 발생한다

→ star topology 사용

  1. ring topology

주위망들을 연결하는 중심망이다. 우리의 몸에서 척추의 역할을 한다하여 back-bone 망이라고도 한다.

예시로 우리나라 지자체망들을 연결하는 하나의 큰 망이 있다.

여러 주위망들을 연결하는 만큼 크고 튼튼해야한다.

1.3 Networks Types

discuss different types of networks by

Size. → LAN/MAN/WAN

geographical coverage.

ownership.

LAN

: Local Area Network

  • 개인적으로 소유되고 회사,건물,캠퍼스 등에 있는 같은 호스트들을 연결한다
  • ex) 회사 안에 있는 두 개의 PC와 프린터들도 LAN의 일종이다
  • LAN에 있는 각각의 호스트들은 identifier(식별자) 와 주소를 가진다
  • 호스트에 의해 다른 호스트로 전송되는 packet은 수신 호스트와 발신 호스트의 주소를 포함한다
  • LAN의 형태

하나가 고장나면 전체가 고장나는 문제뿐만 아니라 host1에서 host5로 신호를 보내려하면 나머지 관련없는 호스트들에게도 신호가 가는 문제가 있다

(옛날방식)

switch를 활용하여 원하는 호스트에게만 신호를 보낼 수 있다. 그리고 하나가 고장나도 나머지는 정상작동한다

(요즘방식)

WAN

: Wide Area Network

  • 더 넓은 지리적 영역을 연결한다
  • 연결장치들을 연결한다
  • 회사, 조직에 의해 생성되고 운행된다
  • WAN의 형태
  1. point-to-point WAN

  1. Switched WAN

스위치 안에 table에 저장된 주소를 바탕으로 신호를 보내는 방향을 조정할 수 있다

ex) 우편배달, 인터넷

  1. internetwork made of two LANs and one WAN

  1. heterogeneous network made of WANs and LANs

다양한 형태의 네트워크가 연결된 형태

Switching

Switch network : 적어도 두 개의 링크를 같이 연결한다

스위치는 필요시 데이터를 한 네트워크에서 다른 네트워크로 전달할 수 있어야한다

호스트에서 다른호스트까지 정보를 주고받는 방식은 두가지가 있다

  1. circuit-switched network

하나의 호스트가 각각의 링크에서 특정 주파수를 할당받아 전체 회전에 대해 독점하게 된다. 그렇기에 해당 주파수에는 다른 호스트는 사용이 불가능하다.

전화와 같은 실시간 통신에 사용된다

특정 주파수를 할당받기에 시간대를 가지게 되는데 만약 전송될 데이터가 없는 경우 자원이 낭비된다는 단점이 있다.

  1. packet-switched network

우선 데이터를 packet이라는 단위로 쪼개서 전달하는 방식이다.

packet은 출발주소와 도착주소가 저장되어 있는데 이 packet들은 라우터에서 전달되기 전 queue에서 대기하게 되고 다른 라우터로 전달되어 최종목적지에 도착한다.

packet-switched network방식에도 문제점이 존재하는데

  1. 처리하는 속도보다 유입되는 속도가 빨라 큐의 범의를 초과하게 되면 buffer overflow가 발생하여 정보가 손실되는 packet loss가 발생한다.

  2. 중간 라우터들의 알고리즘을 이용하여 목적지까지 전달되는데 어떤 경로를 사용하는지에 따라 도착지에 도착하는 패킷들의 순서가 뒤죽박죽된다.→ out of order delivery

    이 경우 패킷들에 번호를 부여하여 해결한다.

the Internet

internet : 두 개 혹은 그 이상의 서로 통신이 가능한 네트워크들을 말한다.

가장 주목할 만한 internet은 Internet이다 (대문자 I) 수천개의 네트워크들로 연결되어 있다.

1.5 Standards and administration

서로 다른 호스트들이 통신을 하기 위해선 표준이 필요하다

표준화기구

  • ISO(국제표준화기구)
  • ITUR (무선기구 표준)
  • ITUT (유선 표준)
  • IETF (인터넷 표준)

1.6 Protocol Layering (프로토콜 계층)

Protocol : 송신자 발신자 그리고 모든 중간 장치들이 효과적인 소통을 위해 따라야 하는 규칙

간단한 통신의 경우 프로토콜은 심플하고, 복잡한 통신일 경우 각각의 계층에서의 프로토콜을 사용한다.

이제 구체적으로 어떤 식으로 데이터가 전송되는지 알아보자

Scenarios(시나리오)

프로토콜 계층의 이해를 돕기 위해 간단한 시나리오를 살펴보자

이 경우는 소통이 매우 간단하여 하나의 레이어에서 발생하는 경우이다.

철수가 영희한테 그냥 말을 하고 듣고 하는 경우이다

이 경우는 세개의 레이어를 통해 소통이 이뤄지는 경우이다. 철수가 영희한테 연애편지를 보내고 싶을 때 우선 편지를 적고, 봉투에 담아 철수의 주소와 영희의 주소를 적는다. 그리고 우체국에 부치면 배달부가 영희한테까지 배달한다.

이와 비슷하게 데이터 통신에 프로토콜 계층이 어떻게 사용되는지 알아보자

Principles of protocol layering

  1. 양방향 통신을 원할 경우, 각각의 레이어 층별로 만들어야한다.
  2. 프로토콜 레이어 안에, 두 objects들은 식별가능해야한다.

Logical Connections

층-층 통신 사이에는 논리적인 연결이 있다. 같은 층끼리 자기들만의 소통이 가능하다.

(layer-to-layer communication)

1.7 TCP/IP PROTOCOL SUITE

심플한 의사소통 → simple protocol

복잡한 의사소통 → 각 층마다 protocol or protocol layering

이 챕터에 들어가기에 앞서 통신이 무엇인지 왜 우리가 이걸 배워야하는지 짚고 가자

두 호스트끼리의 소통을 위해서는 정보를 신호로 바꾸고 목적지로 향하는 과정에서 다수의 중간 링크를 통한다. 우리는 데이터를 전기신호로 바꿀 수 있어야하고 도착지까지의 경로를 알 수 있어야하고 중간에 끼는 노이즈를 판독할 수 있어야한다.

일상생활에서의 예시를 들자면, 내가 철수한테 비밀 물건을 배송하고 싶다. 그렇다면 철수의 집 주소를 적고 박스를 포장해서 우체국에 부쳐야한다. 배달원은 주소를 보고 경유지로 전달하고 전달받은 배달원은 또 주소를 보고 전달한다. 철수는 물건을 받으면 본인한테 온 게 맞는지 확인하고 박스를 오픈한다.

호스트들 사이에서도 이러한 통신을 하기 위해 TCP/IP 프로토콜 계층을 사용한다.

  1. Physical Layer
  2. Data Link Layer
  3. Network Layer
  4. Transport Layer
  5. Application Layer

이렇게 있다.

호스트에서 0과 1로 이루어진 비트열의 컴퓨터신호를 보내려고 하면 이 신호를 전기신호(아날로그 신호, 디지털 신호)로 변환해야한다. 이러한 역할을 하는 것이 Physical Layer(물리계층)이다. 물리계층은 전기신호로 변환하여 통신케이블로 데이터를 전송한다.

전기신호로 변환하고 전달되는 과정에서 노이즈가 발생하여 잘못된 정보가 전달될 수도 있다. 이러한 경우 오류 판독을 위한 추가 정보를 붙여 전달해야하고 잘못된 정보가 전달됐을 시 재전송해야한다.

ex) 101 (보내고자하는 신호) + 이 신호는 1의 개수가 짝수 개 ⇒ 111(잘못 전달된 신호) → 1이 홀수 ⇒ 오류! (재전송 필요)

이러한 판독을 위한 정보를 추가하는 계층이 DataLink계층이다.

Physical, Datalink 계층만으로는 정보를 전달할 수 없다. 도착지까지의 경로를 알 수 있어야한다. 정보는 호스트에서 다른 호스트로 바로 전달되는 것이 아니라 중간 링크들과 라우터를 타고 전달된다. 그 과정에서 이 data packet이 어디로 보내져야하는지 알 수 있어야하는데 그 과정은 Network Layer를 통해 이뤄진다.

Transport Layer는 호스트에 정보가 도착하고 이 정보를 process들 간의 소통을 위한 logical communication을 제공한다. 통신을 활성화한다( 포트 열기)

Application Layer는 서비스를 제공하고 제공받기 위해 어떤 형식으로 메시지를 주고 받아야하는지의 프로토콜들이 모여 있는 레이어다 ex) 이메일 , 웹서핑을 위한 규칙 대부분 client - server 구조로 이루어져 있다

주의 ) 어플리케이션이 들어 있는게 아니라 application 사용을 위한 logic을 포함한다

application layer에서 socket을 활용해 메시지를 transport layer로 전송한다.

1.8 OSI Model

TCP/IP 모델과 OSI모델의 차이이다. 하위계층은 동일하지만 Application layer에서 차이를 보인다.

OSI 모델은 Application layer가 3개의 계층으로 나누어져있다.

이번 챕터에서는 어플리케이션, 호스트들 사이에서 프로토콜 계층을 이용하여 어떻게 통신이 되는지 큰 틀을 간략하게 알아보았다.

앞으로의 챕터에서 각 계층이(물리적계층, 데이터링크계층,네트워크계층) 어떤 원리로 어떻게 구체적으로 과정이 이루어지는지 알아볼 예정이다.

profile
영차

0개의 댓글

관련 채용 정보