• 송신자와 수신자 모두가 데이터를 이해할 수 있도록 응용프로그램 간 데이터 변환을 담당한다.
  • 네트워크로 전송된 데이터 형식( Format )을 결정한다.
  • 데이터 표현 - ASCII, UNICODE, GIF 등

데이터 압축

  • 데이터를 압축하여 필요한 대역폭의 양을 줄인다
  • 데이터의 전송 속도 및 대역폭 절약의 효과가 있다.

데이터 암호화

  • 데이터를 암호화 하여 접근 권한이 없는 사용자로부터 보호한다.

데이터 변환

  • 서로 다른 형식 간의 데이터 변환을 담당한다.
  • 서로 다른 데이터 형식을 사용하는 경우에도 서로 다른 장치 및 응용프로그램에서 교환 가능하다.

5계층부터 7계층은 상위 계층이라고 불린다.

상위 계층은 응용 프로그램의 운영을 담당하는 역할을 한다.

따라서 상위 계층은 응용 프로그램의 관점에서 바라보아야 한다.

 

  • Session 생성, 유지, 종료 등 Session을 관리하는 계층
  • Seesion 계층의 주요 기능
    • 세션의 설정, 관리, 해제
    • 데이터 전송 서비스
    • 동기화
    • 오류 보고 및 복구

실제 세션 계층의 기능은 응용프로그램에 통합되어 구현

  • 세션 계층의 프로토콜은 일반적으로 단독으로 사용되지 않는다.
    • 예를 들어 Remote Desktop Protocol( RDP )은 응용 프로그램 계층에서 실행되는 프로토콜이지만 세션 계층의 서비스를 사용하여 마우스, 키보드, 비디오 출력을 전송하여 원격 데스크톱 기능을 제공해준다.
  • 데이터가 제대로 도착했는지 확인한다
  • 데이터가 최종적으로 도착할 애플리케이션이 무엇인지 식별한다.
    • 이는 네트워크 데이터를 어떤 애플리케이션에서 최종적으로 해석하고 사용할지를 의미한다.
    • 여기서 데이터는 HTTP 요청일 수도 있고, FTP를 사용한 파일 다운로드 요청일 수도 있고, 다양하다
  • 목적에 따라 두가지 통신 방법이 존재한다.
  1. 신뢰성과 정확성
    • 데이터를 목적지에 문제 없이 전달하는 방식
    • 이런 통신 방식을 다른 말로 연결형 통신이라고도 한다.
      • 연결형 통신은 상대방과의 통신 과정을 여러 번 확인하고 보내는 방식을 사용하게 된다.
      • 대표적인 프로토콜로 TCP가 있다.
  2. 효율성
    • 데이터를 빠르고 효율적이게 전달하는 방식
      • 대표적인 프로토콜로 UDP가 있다.
      • UDP는 별도의 확인 절차가 없어서 스트리밍 방식과 같은 동영상 서비스에 유리하다.

 

TCP( Transmission Control Protocol )

  • 전송 제어 프로토콜
  • 전송 계층에서 신뢰할 수 있고 정확한 통신을 제공하는 연결형 프로토콜
  • Segment 단위를 사용한다.

 

TCP는 포트 번호라는 주소로 통신한다. 이 포트 번호는 최종적으로 어떤 애플리케이션으로 향하게 될지를 정해주는 요소다.

 

Source Port

  • 송신자의 포트 번호

Destination Port

  • 목적지의 포트 번호

Sequence Number

  • 송신 측에서 수신 측에 이 데이터가 몇 번째 데이터인지 알려주는 역할을 한다.
  • 해당 번호를 통해 수신 측은 원래 데이터의 몇 번째 데이터를 받았는지 알 수 있다.
  • TCP는 이를 이용하여 데이터가 손상되었거나 유실되었는지를 확인하고, 손상이나 유실되었다면 재전송 제어를 하게 된다.

Acknowledgment Number

  • 수신 측이 몇 번쨰 데이터를 수신했는지 송신측에 알려주는 역할이다.
  • 받은 데이터의 다음 번호의 데이터를 요청하는데 사용한다.

Offset

  • TCP 헤더의 크기를 나타내는 값이다.
  • 데이터의 시작 위치를 나타낸다.

Reserved

  • 차후의 사용을 위해 예약된 필드
  • 항상 0으로 설정한다.

TCP Flags

  • 세그먼트의 용도와 내용을 결정하는 플래그 값이다.
  • 총 8 bit로 이루어져 있으며, 각각의 비트에 연결의 제어 정보가 기록된다.
  • 이를 이용해 TCP Connection을 맺고 TCP 통신을 하게 된다.

Window

  • 한번에 전송할 수 있는 데이터 양을 뜻한다.
  • 65535만큼의 값을 표현 가능하고, byte 단위를 사용한다. 64KB
  • 한 번에 전송할 수 있는 데이터의 최대 크기가 65535 byte라고 생각 하면 된다.

Checksum

  • 데이터를 송신하는 중에 발생할 수 있는 오류를 검출하기 위한 값이다.
  • Checksum과 데이터를 더했을 때, 모든 비트가 1이면 정상으로 판단한다.

Urgent Pointer

  • 긴급 포인터
  • URG 플래그가 1이라면 수신 측은 이 포인터가 가리키고 있는 데이터를 우선 처리한다.

TCP Options

  • 약 30개 정도의 TCP 옵션을 설정할 수 있다.
  • 대표적으로 Window 필드의 사이즈를 늘릴 수 있는 옵션이 있다.

 

3-Way Handshake

  • 데이터를 보내기 전에 연결을 확립하기 위해 패킷 요청을 세번 교환하는 것을 말한다.
  • TCP Flags를 이용하여 패킷을 교환한다.

 

 

UDP( User Datagram Protocol )

  • 데이터를 효율적으로 빠르게 보낼 때 사용한다.
  • 비연결형 통신이기 때문에 3-Way Handshake 과정이 존재하지 않는다.
    • 신뢰성과 정확성은 떨어지나 효율이 증가한다.

 

UDP 헤더

Wireshark를 이용해 3계층 네트워크 패킷을 확인해보자.

 

cmd를 열어서 192.168.0.200으로 ping 테스트를 진행하자.

 

 

이때 Wireshark를 확인하면 ICMP 프로토콜이 전송되는 것을 확인할 수 있다.

위 그림에 있는 ICMP를 클릭라고 상세 정보에서 Internet Protocol Version 4를 클릭해보면 아래와 같은 정보가 출력된다.

 

  • MAC이라는 주소를 사용하여 통신한다.
  • Point to Point( 직접 연결된 ) 간 데이터 전송을 담당하며 흐름 제어, 오류 제어 기능이 존재한다.
    • MAC 주소를 통해 LAN 속 장치 간의 신뢰성 있는 정보( Frame )를 전송한다.
  • MAC( Media Access Control Address )
    • 데이터 링크 계층에서 통신을 위한 NIC에 할당된 고유 식별자를 말한다.
    • 16진수로 표현하며, 총 6 byte( = 48 bit )로 구성된다.
    • 상위 3 byte는 제조 업체 식별 코드 OUI( Organizetional Unique Identifier )를 나타낸다.
    • 하위 3 byte는 고유 번호를 부여하기 위한 시리얼 넘버를 나타낸다.

  • 이더넷( Ethernet )
    • MAC 주소를 통해 식별하는 유선 네트워크 구성 방식
    • LAN에서 적용되는 규칙으로 스위치 같은 장비에 연결된 장비들의 데이터 통신을 위해 사용
    • CSMA/CD 방식을 이용한 통신

2계층 프로토콜은 이더넷 외에도 Token Ring, FDDI, Wi-Fi 등이 존재한다.

 

CSMA/CD ( Carrier Sense Multiple Access with Collision Detection, 반송파 감지 및 접속 및 충돌 탐지 )

  • Carrier Sense : 신호 감지
  • Multiple Access : 다중 접근
  • Collision Detection : 충돌 방지

 

Ethernet Frame

  • Ethernet 네트워크를 통해 전송되는 데이터 단위이며, 헤더, 데이터( 페이로드 ), 트레일러로 구성된다.

Preamble

  • 물리계층에서 전송된 비트패턴
  • 송신자와 수신자의 동기를 맞추는데 사용한다.
  • 7 byte의 크기이며 항상 10101010... 으로 설정한다.

SFD( Start of Frame Delimiter )

  • 1 byte 형태의 물리 계층이 끝나고 프레임 헤더를 알려주는 신호 역할
  • 항상 10101011 이며 마지막 두 필드 11에 의해 프레임 시작을 알린다.

Preamble과 SFD는 프레임의 일부는 아니지만 동기화를 위해 사용된다.

Preamble과 SFD는 패킷 캡처 시 캡처되지 않는다.

 

Destination Address

  • 프레임이 전송되는 대상 장치의 MAC 주소
  • 6 byte
  • ex) AA:AA:AA:BB:BB:BB

Source Address

  • 프레임을 보내는 장치의 MAC 주소
  • 6 byte
  • ex) CC:CC:CC:DD:DD:DD

Ethernet Type

  • 상위 계층의 Protocol 코드 값
  • 3계층에서 어떤 통신을 할지 결정
  • 2 byte
  • IP : 0x0800, ARP : 0x0806 등

Data/Payload

  • 상위 계층에서 내려온 데이터
  • 7계층 부터 3계층의 캡슐화 된 데이터
  • 상위 계층의 데이터 크기에 따라 46 byte ~ 1500 byte까지 유동적인 길이를 가진다.

FCS( CRC ) = Trailer ( Frame Check Sequence( Cyclic Redundancy Check ) )

  • 오류를 확인하는 필드
  • Destination Address와 Source Address, 길이, 데이터 영역의 합을 계산해서 에러를 판별한다.
  • 송신 측에서 FCS에서 CRC를 추가해서 보내고 수신 측에서도 동일한 방법으로 추출한 결과와의 일치성으로 오류 검사를 하는 기술이다.

 

데이터 링크 계층의 장비

스위치

  • LAN에 위치한 장치를 연결하는데 사용한다
  • L2 스위치라고도 불리며 MAC 주소를 저장할 수 있는 특징이 있다.
  • MAC 주소를 저장할 수 있기 때문에 스위칭 기능이 존재한다.
    • 스위칭 기능은 자신이 원하는 목적지에 데이터를 전송하는 기법을 의미한다.
  • 패킷을 전달할 때 Preamble을 제외한 상위 6 byte( Destination MAC Address )만 목적지 MAC주소만 읽고 전달한다.

 

 

ARP( Address Resoluion Protocol )

  • 주소 결정 프로토콜로 해당 IP에 맞는 맥 주소를 가지고 오는 프로토콜이다.

ARP의 헤더를 살펴보자.

 

Hardware Type

  • 2계층 네트워크 유형을 정의
  • Ethernet의 경우 0x0001로 설정

Protocol Type

  • 3계층에서 사용하는 프로토콜을 정의
  • IPv4일 경우 0x0800으로 설정

HW addr Length

  • MAC 주소의 길이를 정의
  • Ethernet의 경우 6 byte로 설정

Protocol addr Length

  • 3계층 프로토콜의 길이를 정의
  • IPv4의 경우 4 byte로 설정

Operation

  • 패킷 유형
  • ARP 요청의 경우 1, ARP 응답의 경우 2를 설정

Sender HW Address

  • 발신자의 MAC 주소를 설정

Sender IP Address

  • 발신자의 IP 주소를 설정

Target HW Address

  • 목적지의 MAC 주소를 설정

Target IP Address

  • 목적지의 IP 주소를 설정

 

  • 시스템 간의 물리적 연결을 위한 계층
  • 전기 신호로 변환된 데이터들을 전송 매체로 이용해 전달하는 계층
  • 컴퓨터는 전기적 신호를 이용해 데이터를 정의한다.
    • 전기가 흐르면 ON( 1 ), 전기가 흐르지 않으면 OFF( 0 )

 

🤔 데이터를 0과 1로 이루어진 비트열로 변환하고 그대로 전송해도 될까?

  • 비트열은 0과 1의 집합이므로 전기 신호로 변환이 필요하다.
  • 랜 카드( NIC, Network Interface Controller )가 위 역할을 한다.
  • 물리 계층에서 전송할 수 있는 전기 신호를 만드는 과정을 변조( Modulation )라고 한다.
  • 물리 계층에서 데이터 링크 계층이 읽을 수 있는 디티절 신호를 만드는 과정을 복조( Demodulation )라고 한다.

 

일상에서 사람들끼리 대화를 할 때 공기라는 매체가 필요하고, 편지를 보낼 때 우체부라는 매체가 필요하다.

통신을 하기 위해서도 당연히 수신자와 송신자 사이에 매체가 필요하다.

 

📌 물리 계층의 전송 매체

📝 유선

  • 광케이블
  • 트위스트 페어 케이블 ( =랜 케이블 )
    • 카테고리 5 케이블 ( UTP 케이블 )
  • 동축 케이블

📝 무선

  • 라디오파
  • 마이크로파
  • 적외선

 

📌 물리 계층의 장비

📝 리피터( Repeater )

  • 전송 과정 중 약해진 신호를 다시 정상화 시키는 장비다.
  • 현재는 다른 장비들에서 리피터의 역할을 하기 때문에 이제는 따로 사용되지 않는다.

📝 더미 허브( Dummy Hub ) = 멀티 포트 리피터

  • 여러 개의 포트를 가지고 있고, 여러 대의 컴퓨터 끼리 송수신 할 수 있도록 해주는 장비다.
  • 신호를 증폭 시켜주는 리피터의 역할을 한다.
  • 들어오는 데이터를 전송할 때 특정 대상을 지정할 수 없어 연결되어 있는 모든 포트에 브로드 캐스트 패킷을 전달한다.

 

💡  더미 허브가 데이터를 전송할 때 특정 대상을 지정할 수 없는 이유

  • 더미 허브의 다른 이름은 멀티 포트 리피터로 포트를 여러 개 가진 리피터 라는 뜻이다.
  • 더미 허브는 전기 신호를 증폭 시키고 전달 하는 기능을 가지고 있다.
  • 모듈레이션과 디모듈레이션 기능이 존재하지 않아 전기 신호를 데이터로 읽을 수 없어 대상을 알 수 없다.
  • 위와 같은 이유로 모든 포트로 전기 신호를 증폭시켜 뿌리게 되고, 대상을 특정하여 보낼 수 없게 된다.

 

📌 캡슐화( Encapsulation )

  • 송신 측에서 데이터를 보낼 때 데이터의 앞부분에 본인 계층의 정보( 헤더 )를 붙여 다음 계층으로 전송하는 것

📌 역캡슐화( Decapsulation )

  • 수신 측에서 자기 계층에 해당 하는 헤더를 읽고 해석하는 것

트레일러 : 데이터를 전달할 때 데이터의 마지막에 추가하는 정보

 

 

📌 캡슐화 & 역캡슐화 장점

  1. 다른 모듈에 미치는 영향이 최소화된다.
  2. 각 계층에 맞는 헤더만 해석되기 때문에 목적에 부합하는 기능만 수행한다.
  3. 네트워크 동일 계층간 호환성이 유지된다.

📌 네트워크 모델의 종류

📝 OSI 7 Layer

  • Open Systems Interconnection 7 Layer의 약어로 국제 표준화 기구( ISO )에서 개발한 표준화된 네트워크 구조 모델
  • 서로 다른 기종 간에 연결이 가능하게 해주는 표준이다.
  • 7개의 계층으로 존재한다.

📝 TCP/IP

  • 패킷 통신 방식의 인터넷 프로토콜인 IP와 전송 프로토콜인 TCP로 구성된다.
  • 하드웨어, 운영체제, 접속 매체에 관계없이 동작할 수 있는 개방성을 가지고 있다.
  • 인터넷에서 사용되는 애플리케이션은 TCP/IP 위에서 동작한다.

 

 

OSI 7 Layer는 장비 개발과 통신 자체를 어떻게 표준으로 잡을지 사용되고,

실질적인 통신 자체는 TCP/IP 프로토콜을 사용한다

'K-Shield > Jr' 카테고리의 다른 글

[K-Shield][Jr] 1계층 - 물리 계층( PhySical Layer )  (1) 2025.04.25
[K-Shield][Jr] 캡슐화 & 역캡슐화  (0) 2025.04.25
[K-Shield][Jr] 네트워크  (0) 2025.04.25
[K-Shield][Jr] 공격 유형  (0) 2025.04.24
[K-Shield][Jr] 위협  (0) 2025.04.24
Net( 그물 ) + Work( 일하다 )의 합성어로 그물처럼 연결된 통신 이용형태를 의미한다.
두 대 이상의 컴퓨터들을 연결하고 서로 통신할 수 있는 것이다.
  • 라디오나 TV의 방송에서, 각 방송국을 연결하여 동시에 같은 프로그램을 방송하는 체제
  • 랜이나 모뎀 따위의 통신 설비를 갖춘 컴퓨터를 이용하여 서로 연결시켜 주는 조직이나 체계

 

분산되어 있는 노드들이 정보를 공유할 수 있게 통신망으로 연결한 것을 의미한다.

  • 노드란 컴퓨터, 서버, 네트워크 장비 등을 의미

 

📌네트워크 구성 단위 이해

  • 네트워크를 지리적 영역과 컴퓨터의 수로 구분할 때, PAN, LAN, MAN, WAN이 존재한다.
  • 네트워크 크기의 순서 PAN < LAN < MAN < WAN

 

📌 PAN( Personal Area Network )

  • 개인의 작업공간을 중심으로 장치들을 서로 연결하기 위한 컴퓨터 네트워크

 

📌 LAN( Local Area Network )

  • 가까운 구역인 한 사무실, 한 건물, 한 학교 등을 묶는 네트워크
  • 소규모의 구역을 나누고 있으며, 같은 IP 대역으로 구성

 

 

 

📑 주변의 LAN

  • Windows : 윈도우키 + r -> cmd -> ipconfig / all
  • WiFi에 연결되어 있으면 Wi-Fi가 나타나고, 랜선으로 연결 되어 있으면 이더넷 더탭터라는 문구를 확인할 수 있다.

PC가 WiFi로 연결되어 있는 모습

  • Mobile : 설정 -> Wi-Fi -> 현재 연결 되어 있는 Wi-Fi의 ⓘ

  • 서브넷 마스크 : IP 주소에서 네트워크 영역과 호스트 영역의 구분을 위한 역할
  • 게이트 웨이( 라우터 ) : 통신하기 위한 통로

 

📑 LAN의 다른 이름

  • Ethernet Network
  • Wi-Fi Network
  • Broadcast Domain
    • Broadcast란 같은 대역에 연결된 모든 호스트에 패킷이 전송되는 방식이다.
    • Broadcast를 받을 수 있는 단말기들을 브로드캐스트 도메인이라 부른다.
  • Switched Network

 

📌 MAN( Metropolitan Area Network )

  • 대도시 또는 캠퍼스에 퍼져 있는 컴퓨터 네트워크
    • 대도시 통신망으로 근거리 통신망인 LAN 보다 크고 WAN보다 작은 규모의 네트워크
  • MAN의 구성은 2개 이상의 LAN이 통신 목적으로 접속되면 MAN이 된다.

 

 

📌 WAN( Wide Area Network )

  • 국가 전체 또는 대륙과 같이 큰 지리적 영역에서 사용된다.
  • 시스템, 전화 회선 등의 공통 통신 사업자를 사용한다.
    • 공통 통신 사업자에는 한국을 예로 들 경우 SKT, LG U+, KT가 이에 해당한다.
  • WAN은 아래 그림처럼 여러개( 수천개 )의 LAN과 MAN이 연결되어 있고, 가장 큰 네트워크를 이룬다.
  • WAN은 인터넷에 가장 가까운 형태이자 한 종류이지만, 큰 기업에서 통신 회선을 임대하고 독점해서 대규모 회사 네트워크를 구축할 경우가 존재하기 때문에 모든 WAN이 인터넷이라고 볼 수는 없다.

 

📌 인터넷( Internet )

  • Inter Network에서 유래된 말로 여러 통신망을 하나로 연결한다는 의미다.
  • 전 세계 컴퓨터들을 하나로 연결하는 거대한 컴퓨터 통신망이다.
  • TCP/IP을 사용하여 연결한다.
  • 인터넷과 네트워크는 동일한 표현이 아니고, 네트워크는 인터넷을 구성하는 요소 중 하나일 뿐이다.

💡 WWW( World Wide Web )은 인터넷인가?

  • WWW은 인터넷에서 HTTP 프로토콜을 사용하여 HTML 형식 등을 이용해 그림, 문자 등을 교환하는 전송방식이다.
  • Internet Explorer의 영향으로 인터넷과 WWW을 같다고 생각하는 사람들이 있지만, WWW는 인터넷에서 동작하는 하나의 서비스일 뿐 엄밀히 말해 인터넷은 아니다.

'K-Shield > Jr' 카테고리의 다른 글

[K-Shield][Jr] 캡슐화 & 역캡슐화  (0) 2025.04.25
[K-Shield][Jr] 네트워크 계층과 프로토콜  (0) 2025.04.25
[K-Shield][Jr] 공격 유형  (0) 2025.04.24
[K-Shield][Jr] 위협  (0) 2025.04.24
[K-Shield][Jr] 정보 보안  (0) 2025.04.24

📌  피싱( Phishing )

  • 가짜 웹 사이트나 이메일을 통해 사용자로 부터 민감한 정보를 획득하려는 사기 공격
  • scam( 사기 )도 피싱 공격의 한 형태다.

📌  랜섬웨어( Ransomware )

  • 몸 값을 의미하는 Ransom과 Software의 합성어
  • 사용자의 데이터를 암호화하고, 해독 키를 얻기 위해 금전을 요구하는 악성 소프트웨어를 말한다.

 

📌 공격 종류 - Network

📑 DDoS( Distributed Denial of Service )

  • 여러 컴퓨터를 이용해 대량의 트래픽을 발생시켜 서버나 네트워크의 정상적인 서비스 제공을 방해하는 공격

📑 Scanning

  • 목표로 하는 네트워크에서 동작 중인 시스템이나 서비스를 탐색하는 행위

📑 Sniffing

  • 네트워크 중간에서 남의 패킷 정보를 도청하는 행위

📑 MITM (Man In The Middle)

  • 중간자 공격으로 네트워크 통신을 조작하여 내용을 도청하거나 조작하는 공격
  • 연결된 두 사람 중간에 공격자가 존재해 중간자가 한쪽에서 정보를 가로채 도청하고, 조작하여 다시 전달하게 됨

 

📌 공격 종류 - Web

📑 SQL Injection

  • 웹 애플리케이션의 데이터베이스 쿼리에 악의적인 SQL 코드를 주입하여 데이터베이스를 조작하는 공격

📑 크로스 사이트 스크립팅(XSS)

  • 사용자 브라우저에 악성 스크립트를 실행시키는 공격
  • 서버측이 아닌 해당 페이지를 방문하게 되는 사용자에게 발생하는 공격

'K-Shield > Jr' 카테고리의 다른 글

[K-Shield][Jr] 캡슐화 & 역캡슐화  (0) 2025.04.25
[K-Shield][Jr] 네트워크 계층과 프로토콜  (0) 2025.04.25
[K-Shield][Jr] 네트워크  (0) 2025.04.25
[K-Shield][Jr] 위협  (0) 2025.04.24
[K-Shield][Jr] 정보 보안  (0) 2025.04.24

+ Recent posts