보안관제란?

  • 보안관제는 기업이나 조직의 정보, 기술, IT 자산을 해킹이나 바이러스 등 사이버 공격으로부터 보호하기 위해 수행되는 지속적이고 체계적인 활동이다.
  • 보안관제의 주요 목표는 보안 위협을 실시간으로 탐지하고, 신속하게 대응하며, 장기적으로는 보안 사고를 예방하는 것이다.
  • 보안관제는 보안관제센터(SOC: Security Operations Center)에서 24시간 교대 근무 체제로 운영된다.

수행 원칙 3가지:

  • 무중단: 보안관제는 24시간 무중단으로 운영되어야 하며, 어떤 상황에서도 시스템의 가용성과 보안을 유지해야 한다.
  • 전문성: 보안관제는 고도로 전문화된 지식과 기술이 필요하다. 이를 위해 지속적인 교육과 훈련이 필수적이다.
  • 정보 공유: 보안 사고 발생 시, 관련된 모든 부서와 정보를 신속히 공유하여 공동 대응이 가능하도록 해야 한다.

출처:https://www.boannews.com/media/upFiles2/2023/08/925284394_241.jpg



보안관제 업무 절차

보안관제 업무 절차는 예방, 탐지, 대응, 보고, 공유 및 개선의 다섯 단계로 이루어진다.

  1. 예방 (Prevention):
    • 보안 위협을 사전에 차단하기 위한 조치를 취한다. 이는 보안 정책 수립, 취약점 점검 및 패치 적용, 사용자 교육, 방화벽 및 침입 방지 시스템 설정 등을 포함한다.
  2. 탐지 (Detection):
    • 실시간으로 네트워크 및 시스템 로그를 모니터링하여 보안 이벤트를 탐지하고, 이상 징후가 발견되면 즉시 분석하여 위협 여부를 판단한다.
  3. 대응 (Response):
    • 탐지된 위협에 대해 신속하게 대응한다. 공격이 확인된 경우, 시스템을 격리하거나 악성 코드를 제거하며, 네트워크 트래픽을 차단하는 등의 조치를 취한다.
  4. 보고 (Reporting):
    • 보안 사고와 대응 과정에 대해 상세한 보고서를 작성하여 내부적으로 공유하고, 필요 시 외부 관계자에게 보고한다.
  5. 공유 및 개선 (Sharing & Improvement):
    • 사고 이후, 관련 정보를 조직 내외부에 공유하고, 사고에서 얻은 교훈을 바탕으로 보안 정책과 절차를 개선한다. 추가적인 보안 테스트와 모의 훈련을 통해 보안 수준을 강화한다.

출처:https://cdn.prod.website-files.com/65f40252d97e8a476f9d7ad2/660ad15c4f965f687860e0dc_Control-tab02-img01.webp

 

보안관제의 유형 및 특징

보안관제는 주로 온프레미스클라우드 두 가지 환경에서 이루어지며, 각각의 환경에 따라 여러 유형으로 나뉜다.

온프레미스(On-Premise)

온프레미스 보안관제는 조직의 물리적인 인프라 내부에서 이루어지며, 다음과 같은 유형으로 구분된다:

  1. 원격관제 (Remote Monitoring):
    • 보안관제센터에서 원격으로 고객사의 IT 자산을 모니터링하고, 보안 이벤트를 탐지하고 대응한다. 이 방식은 고객사의 현장에 보안 전문가가 상주하지 않아도 되며, 경제적으로 효율적일 수 있다.
  2. 파견관제 (Onsite Monitoring):
    • 보안 전문가가 직접 고객사에 파견되어 현장에서 보안관제를 수행한다. 파견관제는 고객사의 특수한 요구나 민감한 데이터를 다루는 경우에 유용하며, 현장 상황에 대한 즉각적인 대응이 가능하다.
  3. 자체관제 (In-House Monitoring):
    • 고객사가 자체적으로 보안관제센터(SOC)를 구축하고 운영한다. 자체관제는 조직 내부에서 모든 보안 작업을 수행하며, 보안에 대한 완전한 통제를 제공한다. 그러나 높은 비용과 운영의 복잡성이 동반될 수 있다.

클라우드(Cloud)

클라우드 보안관제는 클라우드 인프라에 대한 보안을 관리하는 서비스이다. 클라우드 환경은 유연성과 확장성이 뛰어나지만, 그만큼 새로운 보안 위협이 존재할 수 있다. 클라우드 보안관제는 다음과 같은 특징을 가진다:

  1. 클라우드 관제 (Cloud Monitoring):
    • 클라우드 서비스 제공자가 제공하는 보안 도구와 서비스(예: AWS CloudTrail, Azure Security Center)를 통해 클라우드 환경의 보안을 모니터링하고, 위협을 탐지 및 대응한다. 클라우드 관제는 원격에서 이루어지며, 클라우드 자원의 동적인 특성에 맞춰 보안 정책을 적용하고 관리한다.

 

*원격 관제클라우드 관제의 차이점

  1. 공통점
    • 두 관제 방식 모두 원격으로 시스템을 모니터링한다는 점에서는 동일하다.
  2. 온프레미스(물리적 환경) vs 클라우드(가상 환경) 차이
    • 온프레미스: 물리적 환경에 기반하여 장비를 설치하고 운영하며, 추가로 구축할 경우 장비를 별도로 구입하고 설치하는 시간이 소요된다. 또한, 하드웨어 호환성 문제나 설치 공간, 전산센터 보안을 위한 보안요원이나 CCTV 등 물리적 요소를 고려해야 한다.
    • 클라우드: 가상 환경에서 장비를 실시간으로 생성, 삭제, 변경할 수 있으며, 이를 통해 보다 유연한 오케스트레이션이 가능하다. 클라우드에서는 물리적 장비 설치와 관련된 문제가 발생하지 않으며, 물리적 보안 요건도 온프레미스보다 간소화된다.
    • (오케스트레이션이란 IT 환경에서 여러 개의 시스템, 소프트웨어, 서비스 등을 자동으로 관리하고 조정하는 것을 의미한다. )
  3. 클라우드의 이점
    • 유연성: 필요할 때마다 실시간으로 리소스를 확장하거나 축소할 수 있어 관리가 더 효율적이다.
    • 비용 절감: 물리적 장비를 구입하고 유지보수하는 비용을 절감할 수 있다.
    • 보안 관리: 물리적 보안 요소가 줄어들어 관리할 부분이 간소화된다.

 

보안관제 업무 시 활용하는 웹 페이지에 대해 조사

보안관제 업무에서는 다양한 웹 페이지와 툴을 활용하여 위협을 탐지하고 분석한다. 몇 가지 주요 페이지 및 툴은 다음과 같다:

  • KISA Whois(한국인터넷진흥원 후이즈): 한국 인터넷 진흥원에서 제공하는 Whois 서비스, 국내의 IP 검색을 할 때 유용하다( KISA 후이즈검색 whois.kisa.or.kr (xn--c79as89aj0e29b77z.xn--3e0b707e) )
  • Ipconfig(아이피컨피그): KISA Whois에서 찾지 못하는 해외 IP주소를 찾을 수 있다
  • Virustotal(바이러스토 토탈): 구글의 자회사로 파일의 해시값 또는 URL로 바이러스, 웜, 트라이목마 등을 검사해주는 사이트 -> 검사시 해당 파일 검사결과를 공유하게 되기 때문에 개인정보나 기밀사항 등을 검사할 경우 정보가 노출되니 주의해야 한다(https://xn--c79as89aj0e29b77z.xn--3e0b707e/)
  • Zone-h: 해커들이 웹 해킹한 사이트를 과시하기 위해 올리는 사이트-> 사이버 해킹 피해를 검색하기 위해 확인하는 사이트로 사용될 수 있다( Zone-H.org - Unrestricted information )
  • Mozilla Observatory(모질라): 웹페이지의 보안을 시험해주고 보안 취약점과 개선점 등을 파악하여 보고서를 만들어주는 사이트(Mozilla Observatory )
  • Shodan: 인터넷에 연결된 기기를 검색할 수 있는 엔진으로, 특정 IP 대역이나 포트에서 실행 중인 서비스를 탐지하여 취약한 장비를 확인할 수 있다.( Shodan Search Engine )
  • CVE (Common Vulnerabilities and Exposures): 공개된 소프트웨어의 보안 취약점을 모아 놓은 데이터베이스로, 특정 시스템이나 소프트웨어의 취약점을 확인하고 대응책을 마련하는 데 도움을 준다.( CVE Website )
  • Wireshark: 네트워크 프로토콜 분석 도구로, 네트워크 트래픽을 캡처하고 분석하여 이상 징후를 발견할 수 있다.( Wireshark · Go Deep )

 

출처:

https://maker5587.tistory.com/11

Zero Trust 다양한 IT정보와 보안 이야기 (tistory.com)

‘보안관제’에 관한 모든 것 : 네이버 블로그 (naver.com)

 

악성코드

  • 악성코드(Malware)란 시스템이나 네트워크에 해를 끼치거나 불법적인 접근을 시도하는 소프트웨어를 의미한다.
  • 시스템의 성능을 저하시킬 수 있고, 데이터 손상, 정보 유출, 불법적 접근 등 다양한 피해를 초래할 수 있다.

출처:https://image.zdnet.co.kr/2016/10/04/imc_FeKfHanyjDOjKGpH.jpg

 

정탐과 오탐, 미탐의 의미

  • 정탐 (True Positive)
    정탐은 탐지 시스템이 올바르게 악성 행위를 탐지한 경우를 말한다. 예를 들어, 실제로 악성코드가 존재하는 파일을 악성으로 정확히 탐지한 경우이다.
  • 오탐 (False Positive)
    오탐은 탐지 시스템이 잘못된 탐지를 수행한 경우를 의미한다. 즉, 실제로 악성코드가 없는 정상 파일을 악성코드로 잘못 탐지한 경우이다. 오탐은 사용자에게 불필요한 경고를 발생시키거나 시스템의 신뢰성을 저하시킬 수 있다.
  • 미탐 (False Negative)
    미탐은 탐지 시스템이 악성 행위를 놓치는 경우를 의미한다. 즉, 실제로 악성코드가 존재하는데도 이를 탐지하지 못한 경우이다. 미탐은 심각한 보안 위험을 초래할 수 있다.
  악성코드 있음 악성코드 없음
탐지 시스템: 악성 정탐 (True Positive) 오탐 (False Positive)
탐지 시스템: 정상 미탐 (False Negative) 정탐 (True Negative)
  • 정탐 (True Positive): 악성코드를 정확히 탐지한 경우 (실제 악성코드 있음).
  • 오탐 (False Positive): 정상 파일을 악성코드로 잘못 탐지한 경우 (실제 악성코드 없음).
  • 미탐 (False Negative): 악성코드를 탐지하지 못한 경우 (실제 악성코드 있음).
  • 정탐 (True Negative): 정상 파일을 정확히 정상으로 판단한 경우 (실제 악성코드 없음).

 

악성코드 유형 및 사례

1. 바이러스 (Virus)

  • 특징: 바이러스는 자신을 다른 프로그램이나 파일에 삽입하여 복제하는 악성코드이다. 사용자가 감염된 파일이나 프로그램을 실행하면 바이러스가 활성화되어 시스템 파일을 손상시키거나 데이터를 삭제하며, 네트워크를 통해 다른 시스템으로 전파될 수 있다. 일반적으로 바이러스는 다른 파일에 붙어 돌아다니며, 감염된 파일을 통해 퍼진다.
  • 대표적인 사례:
    • ILOVEYOU 바이러스 (2000년):
      • 설명: "ILOVEYOU"는 이메일을 통해 전파된 바이러스로, 제목이 "I LOVE YOU"인 이메일에 첨부된 스크립트 파일을 열면 자동으로 실행된다. 이 바이러스는 감염된 시스템의 파일을 덮어쓰고, 사용자 데이터를 삭제하거나 이메일 주소록의 모든 연락처에 자신을 전송하여 급속히 확산되었다.
      • 피해: 전 세계적으로 약 5000만 대의 컴퓨터가 감염되었으며, 기업과 정부 기관들이 큰 피해를 입었다. 이메일 시스템의 대규모 마비와 중요한 파일의 손실이 발생하였다.
출처:https://www.itworld.co.kr/files/itworld/2020/02/remove_virus_windows_1600_thumb800.jpg

2. 웜 (Worm)

  • 특징: 웜은 자가 복제 능력을 가진 악성코드로, 네트워크를 통해 독립적으로 전파된다. 웜은 시스템 파일에 직접적으로 영향을 미치지 않더라도, 네트워크 자원을 소모하거나 네트워크 트래픽을 과부하 시켜 시스템의 성능을 저하시킨다.
  • 대표적인 사례:
    • Blaster 웜 (2003년):
      • 설명: "Blaster"는 Windows 시스템의 RPC(Remote Procedure Call) 취약점을 이용하여 전파된 웜이다. 감염된 시스템은 자동으로 재부팅되며, 추가적으로 DDoS(Distributed Denial of Service) 공격을 수행하여 Microsoft의 웹사이트를 공격하기도 했다.
      • 피해: 전 세계적으로 수많은 컴퓨터가 감염되었으며, 네트워크 트래픽의 과부하와 시스템 불안정을 초래했다. 많은 기업과 개인 사용자가 시스템을 복구하기 위해 상당한 시간과 비용을 소모하였다. 
출처:https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F2361AB4858F2E72628

3. 트로이 목마 (Trojan Horse)

  • 특징: 트로이 목마는 유용한 소프트웨어처럼 위장하여 사용자가 설치하도록 유도되지만, 실제로는 백그라운드에서 악성 활동을 수행한다. 스파이웨어, 백도어, 원격 제어 기능 등을 포함할 수 있으며, 사용자의 개인정보를 탈취하거나 시스템에 백도어를 열어두는 등의 악성 행동을 한다.
  • 대표적인 사례:
    • Zeus 트로이 목마 (2007년):
      • 설명: "Zeus"는 주로 금융 정보를 탈취하기 위해 설계된 트로이 목마이다. 키로깅(keylogging)과 브라우저 폼 그리핑(form-grabbing) 기능을 통해 사용자들의 온라인 뱅킹 계정 정보를 수집하고 탈취하였다.
      • 피해: 전 세계적으로 수백만 대의 컴퓨터가 감염되었으며, 많은 사용자들의 금융 정보가 유출되었다. 은행 계좌와 크레딧 카드 정보의 도난으로 금전적 손실이 발생했다.
출처:https://www.eset.com/fileadmin/ESET/INT/Pages/Features_pages/trojan-horse.png

 

4. 랜섬웨어 (Ransomware)

  • 특징: 랜섬웨어는 시스템의 파일을 암호화하여 사용자가 파일에 접근할 수 없게 만든 후, 이를 복구하기 위해 금전을 요구하는 악성코드이다. 암호화된 파일을 복구하기 위해 요구되는 금액은 비트코인 등 암호화폐로 지불하게 되며, 지불 후에도 데이터가 복구되지 않을 수 있다.
  • 대표적인 사례:
    • WannaCry (2017년):
      • 설명: "WannaCry"는 Windows의 SMB 취약점을 이용하여 빠르게 확산된 랜섬웨어이다. 감염된 시스템의 파일을 암호화하고, 이를 복구하기 위해 비트코인으로 몸값을 요구하였다.
      • 피해: 전 세계적으로 약 150개국 이상에서 20만 대 이상의 컴퓨터가 감염되었으며, 많은 병원, 기업, 기관들이 피해를 입었다. 중요한 데이터와 파일에 대한 접근이 차단되었고, 시스템 복구를 위한 몸값 요구로 인해 큰 혼란이 발생했다.
    • Petya (2016년):
      • 설명: "Petya"는 시스템의 마스터 부트 레코드(MBR)를 덮어쓰는 랜섬웨어로, 시스템 부팅을 방지하며, 사용자는 암호화된 파일을 복구하기 위해 금전을 지불해야 한다.
      • 피해: 감염된 컴퓨터는 부팅이 불가능해지며, 데이터의 암호화로 인해 시스템 운영에 심각한 지장이 생겼다. 피해를 복구하기 위한 비용과 시간 소모가 컸으며, 특히 유럽과 우크라이나에서 큰 피해를 입었다.
출처:https://seed.kisa.or.kr/resources/kisa/img/icon/icon_Lansomware_icon.png

5. 스파이웨어 (Spyware)

  • 특징: 스파이웨어는 사용자 모르게 시스템에 설치되어 사용자의 활동을 모니터링하고 민감한 정보를 수집하는 악성코드이다. 사용자의 동의 없이 설치되며, 시스템에 대한 통제권을 갖고 있는 경우가 많다.
  • 대표적인 사례:
    • CoolWebSearch (2003년):
      • 설명: "CoolWebSearch"는 사용자의 브라우저 설정을 변경하고, 특정 웹사이트로 리디렉션하며, 검색 엔진 결과를 변조하는 스파이웨어이다. 이를 통해 광고 수익을 얻고 사용자 정보를 수집하였다.
      • 피해: 사용자의 브라우징 경험을 방해하고, 의도치 않은 광고와 웹사이트로의 리디렉션으로 인해 시스템 성능이 저하되었으며, 개인정보 수집과 사용자의 온라인 행동 감시에 피해를 입었다.
출처:https://nordvpn.com/wp-content/uploads/blog-featured-line-stalker-cybersecurity.svg

6. 애드웨어 (Adware)

  • 특징: 애드웨어는 주로 사용자에게 불필요한 광고를 지속적으로 표시하는 소프트웨어이다. 사용자의 동의 없이 광고를 표시하거나, 브라우저 설정을 변경하여 특정 사이트로 리디렉션한다. 사용자의 동의 하에 설치되기도 하지만, 광고를 강제로 표시하는 경우가 많다.
  • 대표적인 사례:
    • Gator (2000년대 초):
      • 설명: "Gator"는 웹 브라우저에 광고 배너를 삽입하고, 사용자의 브라우징 습관을 추적하여 맞춤형 광고를 제공하는 애드웨어이다. 사용자는 웹 페이지에서 많은 광고 팝업을 경험하게 된다.
      • 피해: 웹 브라우징 경험을 방해하고, 시스템 성능을 저하시켰으며, 사용자의 개인정보와 브라우징 데이터를 수집하여 광고주에게 제공하였다.
    • Fireball (2017년):
      • 설명: "Fireball"은 브라우저 하이재커로, 사용자의 검색 엔진과 홈 페이지를 변경하여 광고를 표시하고, 사용자의 데이터를 수집하는 애드웨어이다.
      • 피해: 사용자의 브라우저 설정을 무단으로 변경하고, 광고 수익을 창출하기 위해 사용자의 행동 데이터를 수집하였다. 이는 브라우징 경험을 방해하고, 개인 정보 유출의 위험을 증가시켰다.
출처:https://miro.medium.com/v2/resize:fit:828/format:webp/1*7c2sJt2GZiXR177hg2Do4g.png

 

 

악성코드 유형 특징 대표적인 사례
바이러스 (Virus) 파일이나 부팅 섹터를 감염시키며, 자기 복제하여 확산하는 악성코드이다. ILOVEYOU
웜 (Worm) 네트워크를 통해 스스로 복제하고 전파되는 악성코드이다. Blaster Worm
트로이 목마 (Trojan Horse) 유용한 소프트웨어로 위장해 설치되지만, 백그라운드에서 악성 활동을 수행하는 악성코드이다. Zeus
랜섬웨어 (Ransomware) 시스템의 파일을 암호화한 후, 금전을 요구하는 악성코드이다. WannaCry
스파이웨어 (Spyware) 사용자의 활동을 모니터링하고 정보를 수집하는 악성코드이다. CoolWebSearch
애드웨어 (Adware) 불필요한 광고를 지속적으로 표시하는 소프트웨어이다. Gator, Fireball

'Security > Network' 카테고리의 다른 글

Firewall, DDoS, IDS 와 IPS 의 특징 및 차이점  (0) 2024.08.24
계층별 주요 프로토콜(2)  (0) 2024.08.12
계층별 주요 프로토콜(1)  (0) 2024.08.10
OSI 계층 별 장비  (2) 2024.07.23
TCP와 UDP의 특징 및 차이점  (0) 2024.07.16

DDoS (분산 서비스 거부 공격, Distributed Denial of Service)

  • 여러 대의 장비를 이용해 특정 서버나 네트워크에 대량의 트래픽을 보내 서비스 운영을 방해하는 공격이다

DDoS 공격의 특징

  • 분산된 공격: DDoS 공격은 여러 장치를 동시에 사용하여 이루어진다. 공격 트래픽의 출처는 다양하고 분산되어 있다. 이 장치들은 보통 **봇넷(Botnet)**이라고 불리는 악성 네트워크에 속하며, 감염된 컴퓨터나 IoT 장치로 구성된다.
  • 대규모 트래픽: 공격자는 목표 시스템에 막대한 양의 트래픽을 보내 시스템의 네트워크 대역폭, CPU, 메모리 등의 자원을 소진시킨다. 그 결과, 정상적인 사용자가 서비스에 접근할 수 없게 만든다. 이러한 대규모 트래픽은 서비스의 성능 저하, 접속 불가, 또는 완전한 서비스 중단을 초래할 수 있다.
  • 여러 유형의 공격: DDoS 공격은 다양한 방식으로 수행된다.
    • 볼륨 기반 공격(Volumetric Attack): 대량의 트래픽을 발생시켜 네트워크 대역폭을 소진시키는 공격이다. 대표적으로 UDP Flood, ICMP Flood, DNS 증폭(DNS Amplification) 등이 있다.
    • 프로토콜 공격(Protocol Attack): 네트워크 프로토콜의 취약점을 악용하여 서버 자원을 소진시키는 공격이다. SYN Flood, Ping of Death 등이 있다.
    • 애플리케이션 계층 공격(Application Layer Attack): 특정 애플리케이션 또는 서비스의 취약점을 노려 자원을 소진시키는 공격이다. HTTP Flood, Slowloris 등이 이에 해당한다.
출처:https://cf-assets.www.cloudflare.com/slt3lc6tev37/7xwaGxGINeyxavVbrXO6M1/24f139faac6094044adaa84c82394962/ddos_attack_traffic_metaphor.png

DDoS 공격의 주요 유형

  • UDP 플러드(UDP Flood):
    • UDP(User Datagram Protocol) 패킷을 대량으로 전송하여 타겟 시스템이 이를 처리하느라 자원을 소모하게 만든다. 응답을 요구하지 않는 패킷으로 서버의 대역폭을 소모시킨다.
  • SYN 플러드(SYN Flood):
    • TCP 연결의 시작 단계에서 SYN 패킷을 대량으로 보내고, 서버가 SYN/ACK로 응답한 후 ACK 패킷을 받지 못하게 한다. 서버의 연결 대기열을 가득 채워 다른 요청을 처리하지 못하게 만든다.
  • DNS 증폭(DNS Amplification):
    • 공격자는 작은 DNS 요청 패킷을 여러 DNS 서버에 보내고, 이 요청이 반사되어 타겟 시스템에 대규모의 응답 패킷이 전송되게 한다. 반사된 응답이 타겟 서버에 큰 부하를 준다.
  • HTTP 플러드(HTTP Flood):
    • 웹 서버의 특정 페이지나 리소스에 대량의 HTTP 요청을 보내, 서버가 이를 처리하느라 리소스를 소모하도록 만든다. 주로 애플리케이션 계층에서 이루어지는 공격이다.
  • Slowloris:
    • 타겟 서버에 매우 느린 속도로 HTTP 헤더를 전송하여 서버의 연결을 점유하고, 새로운 연결을 차단하여 서버가 정상적인 요청을 처리하지 못하게 한다.

DDoS 공격의 영향

  • 서비스 중단: DDoS 공격은 타겟 서비스의 가용성을 심각하게 저하시킨다. 서비스가 중단되면 고객 신뢰도 저하, 비즈니스 손실, 브랜드 이미지 손상 등의 심각한 결과를 초래할 수 있다.
  • 비용 증가: 서비스 복구와 방어를 위한 비용, 그리고 서비스 중단으로 인한 손실 비용이 크게 증가할 수 있다.
  • 보안 위협: DDoS 공격은 다른 유형의 공격(예: 데이터 유출 공격)과 함께 수행될 수 있어 보안 위협이 더욱 증대될 수 있다.

Firewall (방화벽)

  • 네트워크 경계를 설정하여, 허용된 트래픽만 통과시키고 의심스러운 트래픽을 차단하는 보안 장비이다.
출처:https://upload.wikimedia.org/wikipedia/commons/5/5b/Firewall.png

방화벽의 주요 특징

  • 네트워크 경계 보안: 방화벽은 네트워크의 외부와 내부를 구분하고, 이 경계를 통해 오가는 모든 트래픽을 제어한다. 이를 통해 외부의 위협이 내부 네트워크에 침투하는 것을 방지할 수 있다.
  • 트래픽 필터링: 방화벽은 설정된 보안 정책에 따라 인바운드 및 아웃바운드 트래픽을 필터링한다. 이 필터링은 IP 주소, 포트 번호, 프로토콜, 애플리케이션 등의 기준에 따라 수행되며, 불법적이거나 의심스러운 트래픽은 차단되고 허가된 트래픽만이 통과할 수 있다.
  • 접근 제어: 방화벽은 사용자 또는 시스템의 접근을 제어할 수 있다. 예를 들어, 특정 IP 주소나 포트에 대한 접근을 제한하거나 허용할 수 있으며, 이를 통해 네트워크 자원에 대한 불법적인 접근을 방지할 수 있다.
  • 로그 및 모니터링: 방화벽은 통과하는 트래픽에 대한 로그를 기록하고, 이를 통해 네트워크 활동을 모니터링할 수 있다. 관리자는 이 로그를 분석하여 잠재적인 보안 위협을 탐지하고, 이를 기반으로 보안 정책을 수정할 수 있다.

방화벽의 주요 기능

  • 접근 제어 목록(ACL, Access Control List):
    • 방화벽은 ACL을 사용하여 어떤 트래픽이 허용되고 어떤 트래픽이 차단될지를 정의한다. ACL은 IP 주소, 포트 번호, 프로토콜 등의 기준에 따라 세부적인 접근 제어 규칙을 설정할 수 있다.
  • NAT(Network Address Translation):
    • NAT는 방화벽의 중요한 기능 중 하나로, 내부 네트워크의 프라이빗 IP 주소를 외부에 노출하지 않고 퍼블릭 IP 주소로 변환하여 외부와의 통신을 가능하게 한다. 이를 통해 내부 네트워크의 IP 주소를 숨기고 외부에서의 직접적인 공격을 방지할 수 있다.
  • VPN 지원:
    • 방화벽은 가상 사설망(VPN) 기능을 제공하여 외부에서 내부 네트워크로의 안전한 접속을 가능하게 한다. VPN을 통해 암호화된 터널을 생성하고 원격 사용자나 지사 간의 안전한 통신을 지원한다.
  • 로그 및 보고:
    • 방화벽은 트래픽 활동에 대한 로그를 기록하고, 관리자가 네트워크 상태를 모니터링하고 분석할 수 있도록 다양한 보고서를 제공한다. 이를 통해 의심스러운 활동을 감지하고 보안 사고에 신속히 대응할 수 있다.

방화벽의 주요 유형

  • 패킷 필터링 방화벽 (Packet Filtering Firewall)_1세대:
    • 가장 기본적인 형태의 방화벽으로, 네트워크 계층에서 작동한다. IP 주소, 포트 번호, 프로토콜 등의 정보를 기반으로 개별 패킷을 검사하고, 규칙에 따라 허용하거나 차단한다.
    • 장점: 구현이 간단하고 빠르며, 기본적인 보안을 제공한다.
    • 한계: 상태를 유지하지 않기 때문에, 세션 정보를 기반으로 한 공격을 방어하기 어렵다.
  • 상태기반 방화벽 (Stateful Inspection Firewall)_2세대:
    • 패킷 필터링 방화벽의 기능을 확장하여 패킷의 상태(세션 정보)를 추적한다. TCP/IP 연결 상태를 기반으로 허가된 세션의 트래픽만 허용하고, 비정상적인 세션의 트래픽을 차단한다.
    • 장점: 트래픽의 세션 정보를 추적하여 더 정교한 필터링을 제공하며, 불법적인 연결 시도를 차단할 수 있다.
    • 한계: 상태 추적이 추가되면서 성능에 영향을 줄 수 있다.
  • 응용 계층 방화벽 (Application Layer Firewall)_3세대:
    • OSI 모델의 응용 계층에서 작동하며, 특정 애플리케이션 프로토콜(예: HTTP, FTP, SMTP)을 검사하고 제어한다. 애플리케이션 레벨에서 트래픽을 분석하여 애플리케이션 수준의 공격(예: SQL 인젝션, 크로스 사이트 스크립팅)을 차단할 수 있다.
    • 장점: 애플리케이션 레벨에서 상세한 보안 제어가 가능하며, 고급 공격에 대해 더 강력한 보호를 제공한다.
    • 한계: 트래픽 검사로 인해 성능이 저하될 수 있으며, 설정이 복잡하다.
  • 프록시 방화벽 (Proxy Firewall):
    • 클라이언트와 서버 사이에 위치하여 클라이언트의 요청을 대신 서버에 전달하고, 그 응답을 다시 클라이언트에게 전달하는 역할을 한다. 클라이언트와 서버 간의 직접적인 연결을 차단하여 보안을 강화한다.
    • 장점: 트래픽을 완전히 검토할 수 있어 높은 수준의 보안을 제공한다.
    • 한계: 모든 트래픽을 처리하므로 성능이 저하될 수 있으며, 설정과 관리가 복잡할 수 있다.
  • 차세대 방화벽 (Next-Generation Firewall, NGFW):
    • 기존의 방화벽 기능에 침입 방지 시스템(IPS), 애플리케이션 인식, 고급 위협 방어 기능 등을 통합한 고급 보안 장비이다. NGFW는 심층 패킷 분석(Deep Packet Inspection, DPI)을 통해 트래픽의 내용을 검사하고 악성 활동을 탐지하고 차단할 수 있다.
    • 장점: 다양한 보안 기능을 통합하여 복잡한 현대의 보안 위협에 대해 더 강력한 보호를 제공한다.
    • 한계: 고급 기능으로 인해 비용이 높고, 성능 저하가 발생할 수 있다.

 

방화벽의 역할과 중요성

  • 외부 위협으로부터의 보호: 방화벽은 외부의 악성 트래픽과 공격으로부터 내부 네트워크를 보호하는 데 중요한 역할을 한다. 이는 해커, 악성 소프트웨어, 봇넷 등의 위협을 차단하여 네트워크와 데이터를 안전하게 유지한다.
  • 내부 보안 강화: 방화벽은 외부 위협뿐만 아니라 내부 사용자나 시스템 간의 접근을 제어하여 내부 보안도 강화할 수 있다. 예를 들어, 특정 부서만이 특정 서버에 접근할 수 있도록 설정할 수 있다.
  • 법적 및 규제 준수: 많은 산업에서 방화벽을 통해 네트워크 보안을 유지하고 규제 요구 사항을 준수해야 한다. 방화벽은 이러한 요구 사항을 충족하는 데 중요한 요소이다.

한계와 도전 과제

  • 제로데이 공격: 방화벽은 미리 정의된 규칙에 따라 트래픽을 제어하기 때문에 새로운 유형의 공격(제로데이 공격)에 대해서는 취약할 수 있다.
  • 암호화된 트래픽: HTTPS와 같은 암호화된 트래픽은 방화벽이 내용을 분석하기 어렵게 만든다. 이를 해결하기 위해 SSL/TLS 복호화 기능을 사용할 수 있지만, 이는 성능 저하를 유발할 수 있다.
  • 복잡한 설정: 특히 큰 네트워크에서는 방화벽 규칙을 잘못 설정하면 정상적인 트래픽이 차단되거나 보안이 제대로 이루어지지 않을 수 있다. 따라서 방화벽 설정과 관리가 매우 중요하다.

IDS(침입 탐지 시스템, Intrusion Detection System)

  • 네트워크나 시스템에서 악의적인 활동을 모니터링하고 경고를 생성하지만, 직접적인 차단 기능은 제공하지 않는 보안 시스템이다.

 
 
특징:

  • 탐지 기능: IDS는 네트워크나 시스템을 모니터링하며, 악의적인 활동이나 정책 위반을 탐지한다. 주로 로그, 패킷 데이터, 파일 무결성 등을 분석하여 비정상적인 활동을 식별한다.
  • 수동적 대응: IDS는 의심스러운 활동을 탐지하면 경고 메시지를 관리자에게 전달하거나 로그에 기록한다. 직접적으로 공격을 차단하거나 중지하지 않으며, 관리자는 이 정보를 바탕으로 후속 조치를 취할 수 있다.
  • 네트워크 기반(NIDS)과 호스트 기반(HIDS):
    • 네트워크 기반 IDS(NIDS): 네트워크 트래픽을 실시간으로 모니터링하며, 전체 네트워크를 대상으로 탐지한다.
    • 호스트 기반 IDS(HIDS): 개별 호스트나 시스템에서 동작하며, 파일 시스템, 로그, 운영 체제의 활동을 모니터링한다.
  • 시그니처 기반 탐지(Signature-based Detection): IDS는 알려진 공격 패턴이나 서명을 기반으로 탐지한다. 이는 이미 알려진 공격에 대해 효과적이지만, 새로운 유형의 공격(제로데이 공격)에는 취약할 수 있다.
  • 행위 기반 탐지(Anomaly-based Detection): 비정상적인 행위를 탐지하기 위해 정상적인 활동의 기준을 설정하고, 이와 다른 행동이 감지되면 이를 의심스러운 활동으로 식별한다. 이는 제로데이 공격과 같은 새로운 위협을 탐지하는 데 유용할 수 있다.

한계:

  • 실시간 차단 불가: IDS는 탐지된 공격에 대해 경고만 할 수 있으며, 실시간으로 공격을 차단하거나 대응하지 못한다.
  • 오탐 및 미탐: 비정상적인 활동을 탐지하는 과정에서 정상적인 활동을 오탐하거나, 실제 공격을 미탐할 가능성이 있다.
  • 관리자의 개입 필요: IDS가 탐지한 경고에 대해 관리자가 직접 대응해야 하므로, 신속한 대응이 어려울 수 있다.

IPS(침입 방지 시스템, Intrusion Prevention System)

  • 악의적인 활동을 실시간으로 탐지하고 자동으로 차단하여, 공격을 방지하는 보안 장비이다.

특징:

  • 탐지 및 방지 기능: IPS는 IDS와 유사하게 네트워크나 시스템에서 발생하는 비정상적인 활동을 탐지하지만, 탐지된 위협에 대해 즉시 대응하여 공격을 차단하거나 억제하는 기능을 추가로 제공한다.
  • 능동적 대응: IPS는 실시간으로 탐지된 위협에 대해 자동으로 대응한다. 예를 들어, 악성 트래픽을 차단하거나 공격 소스를 차단하는 등의 조치를 즉시 취한다.
  • 네트워크 기반(NIPS)과 호스트 기반(HIPS):
    • 네트워크 기반 IPS(NIPS): 네트워크 트래픽을 모니터링하고, 비정상적인 트래픽을 실시간으로 차단한다.
    • 호스트 기반 IPS(HIPS): 개별 시스템에서 동작하며, 시스템 내부의 비정상적인 활동을 차단한다.
  • 심층 패킷 분석(Deep Packet Inspection, DPI): IPS는 트래픽의 내용을 심층적으로 분석하여 악성 코드나 비정상적인 활동을 탐지한다. 이를 통해 애플리케이션 계층에서 발생하는 공격도 효과적으로 차단할 수 있다.
  • 시그니처 기반 및 행위 기반 탐지: IPS는 시그니처 기반 탐지와 행위 기반 탐지를 모두 사용하여, 다양한 유형의 공격을 탐지하고 차단한다. 알려진 공격과 새로운 유형의 공격에 대해 모두 대응할 수 있다.

한계:

  • 성능 영향: 실시간으로 트래픽을 분석하고 차단하기 때문에, 네트워크 성능에 영향을 줄 수 있다. 특히 고속 네트워크 환경에서 처리량 저하가 발생할 수 있다.
  • 오탐으로 인한 서비스 방해: IPS가 정상적인 트래픽을 오탐하여 차단할 경우, 이는 서비스 방해(Denial of Service) 상황을 초래할 수 있다.
  • 복잡한 설정과 관리: 효과적인 방지를 위해 세부적인 설정과 규칙 관리가 필요하며, 이는 관리자의 전문성을 요구한다.
출처:https://www.paloaltonetworks.co.kr/content/dam/pan/en_US/images/cyberpedia/ids-ips.png?imwidth=1920

 
기능방화벽 (Firewall)/침입 탐지 시스템 (IDS)/침입 방지 시스템 (IPS)의 특징

 FirewallIDSIPS
목적네트워크 경계에서 트래픽 필터링 및 접근 제어네트워크 또는 시스템의 비정상적인 활동 탐지 및 경고네트워크 또는 시스템의 비정상적인 활동 탐지 및 차단
작동 위치네트워크 경계(외부와 내부 사이)네트워크 내 또는 시스템 내부네트워크 내 또는 시스템 내부
트래픽 제어인바운드 및 아웃바운드 트래픽을 필터링트래픽을 모니터링하고 분석하지만 필터링하지 않음트래픽을 모니터링하고 분석하며 악성 트래픽을 차단
주요 기능IP 주소, 포트 번호, 프로토콜 기반의 트래픽 필터링패턴 기반 또는 이상 탐지 방식으로 비정상적 행동 탐지비정상적 행동을 탐지하고 실시간으로 차단
트래픽 분석패킷의 헤더 정보를 검사하고 규칙에 따라 허용 또는 차단트래픽 패턴과 행동을 분석하여 의심스러운 활동 탐지심층 패킷 분석을 통해 공격을 식별하고 차단
응답 방식설정된 규칙에 따라 트래픽 차단 또는 허용공격 발생 시 관리자에게 경고 및 로그 기록공격 발생 시 자동으로 공격 차단 및 대응
장점네트워크 경계에서 기본적인 보안 제공, 설정이 비교적 간단공격 탐지와 경고 기능 제공, 네트워크 상태의 가시성 제공실시간으로 공격을 차단하여 네트워크 보호
한계새로운 유형의 공격(제로데이 공격)에 취약, 암호화된 트래픽 처리 어려움공격을 탐지하지만 차단하지는 않음, 많은 False Positive 발생 가능성능 저하를 초래할 수 있으며, 복잡한 설정이 필요할 수 있음
로그 및 모니터링트래픽 로그를 기록하고 네트워크 활동 모니터링 가능공격 탐지 및 경고를 위한 로그 기록, 분석 가능공격 차단 및 로그 기록, 실시간 모니터링 가능

Firewall, IDS, IPS의 DDoS 대처

  1. Firewall (방화벽)과 DDoS:
    • 역할: 방화벽은 DDoS 공격의 첫 번째 방어선으로 작동합니다. 방화벽은 트래픽을 필터링하여 악의적인 IP 주소나 비정상적인 트래픽 패턴을 차단할 수 있다.
    • 한계: 전통적인 방화벽은 대량의 트래픽을 처리하는 데 한계가 있을 수 있으며, 대규모 DDoS 공격 시 방화벽 자체가 과부하에 걸릴 수 있다. 이는 공격이 방화벽을 무력화시키고 내부 네트워크로 침투하게 할 위험을 증가시킨다.
  2. IDS (Intrusion Detection System)와 DDoS:
    • 역할: IDS는 DDoS 공격을 탐지하는 데 중요한 역할을 한다. IDS는 네트워크 트래픽을 모니터링하여 비정상적인 트래픽 증가나 특정 패턴을 감지하고, DDoS 공격의 징후를 경고한다.
    • 한계: IDS는 단순히 탐지하고 경고를 보내는 역할만 수행하므로, DDoS 공격을 직접 차단할 수 없다. 관리자는 IDS가 제공하는 정보를 바탕으로 공격에 대응해야 한다.
  3. IPS (Intrusion Prevention System)와 DDoS:
    • 역할: IPS는 IDS의 기능에 실시간 차단 기능이 추가된 것으로, DDoS 공격을 탐지한 후 즉시 공격 트래픽을 차단할 수 있다. IPS는 비정상적인 트래픽을 실시간으로 분석하고, 의심스러운 패킷이나 트래픽 흐름을 차단하여 DDoS 공격의 영향을 최소화하려고 한다.
    • 한계: 대규모 DDoS 공격에 대한 실시간 대응 과정에서 성능 저하가 발생할 수 있으며, 정상적인 트래픽이 오탐으로 인해 차단될 위험도 있다. 또한, 모든 공격을 완전히 차단하지 못할 수도 있다.
  4. 전문 DDoS 방어 솔루션과의 연관성:
    • 방화벽, IDS, IPS와의 협업: 방화벽, IDS, IPS는 기본적인 보안 솔루션이지만, 대규모 DDoS 공격에 대응하기 위해서는 전용 DDoS 방어 솔루션과 협력하는 것이 일반적이다. 이러한 전용 솔루션은 대규모 트래픽 분석, 공격 패턴 식별, 트래픽 필터링 등을 통해 DDoS 공격을 더 효과적으로 방어할 수 있다.
    • 클라우드 기반 DDoS 방어: 많은 조직은 클라우드 기반 DDoS 방어 솔루션을 사용하여, 대규모 공격을 클라우드에서 흡수하고 필터링한다. 이러한 솔루션은 방화벽, IDS, IPS와 연동하여 네트워크의 보안을 강화한다.

 

*PPT

[8주차]Firewall, DDoS, IDS, IPS 특징 및 차이점.pptx
2.26MB

출처

침입 탐지 시스템이란? - Palo Alto Networks
방화벽 (네트워킹) - 위키백과, 우리 모두의 백과사전 (wikipedia.org)
Firewall, DDoS, IDS, IPS (velog.io)
+chatgpt

'Security > Network' 카테고리의 다른 글

악성코드  (0) 2024.08.27
계층별 주요 프로토콜(2)  (0) 2024.08.12
계층별 주요 프로토콜(1)  (0) 2024.08.10
OSI 계층 별 장비  (2) 2024.07.23
TCP와 UDP의 특징 및 차이점  (0) 2024.07.16

계층별 주요 프로토콜(1) :: West_Cold (tistory.com)

 

계층별 프로토콜(1)

프로토콜이란?프로토콜(protocol)프로토콜은 네트워크 통신 규칙을 정의하는 것이다. 각 프로토콜은 특정한 기능을 수행하며, 데이터를 어떻게 전송할지, 수신할지를 규정한다. 예를 들어, HTTP는

eatitstory.tistory.com

 

계층별 주요 프로토콜을 1편에 이어 더 알아보자

 

1. SSH와 Telnet의 특징 및 차이점

  • Telnet과 SSH는 원격으로 컴퓨 시스템에 접근하고 명령을 실행하기 위한 프로토콜이다. 이들은 네트워크 상에서 응용 프로그램 간의 데이터 통신을 담당하는 OSI 7 계층에 속한다.

 

  • Telnet
    • 설명
      • Telnet은 원격 시스템에 로그인하고 명령을 실행하기 위한 프로토콜이다.
      • 그러나 데이터가 평문으로 전송되므로 보안이 매우 취약하다.
    • 동작 방식
      • Telnet 클라이언트는 서버의 23번 포트에 접속하여 명령을 전송한다.
      • 이때 모든 데이터와 인증 정보가 암호화되지 않은 상태로 전송된다.
    • 특징
      • 현재는 보안이 중요하지 않은 내부 네트워크에서만 사용된다.
    • 예시
      • 내부 네트워크에서 네트워크 장비를 설정하거나 간단한 테스트를 할 때 사용될 수 있다.
    • 차이점
      • Telnet은 보안 기능이 전혀 없으며, SSH와 달리 암호화되지 않은 데이터를 전송한다.
      • 보안 취약성으로 인해, 현대에는 거의 사용되지 않는다.  
  • SSH (Secure Shell)
    • 설명
      • SSH는 보안이 강화된 원격 로그인 및 명령어 실행을 위한 프로토콜이다.
    • 동작 방식
      • SSH는 공개 키 기반 인증과 데이터 암호화를 사용하여 안전한 통신을 제공한다.
      • 사용자는 SSH 클라이언트를 통해 서버에 접속하며, 모든 데이터는 암호화된 채널을 통해 전송된다.
    • 특징
      • SSH는 기본적으로 22번 포트를 사용한다.
      • 터널링 기능을 통해 다양한 서비스에 안전하게 접근할 수 있다.
    • 예시
      • 서버 관리자가 원격으로 Linux 서버에 접속하여 설정을 변경하거나 로그 파일을 조회할 때 사용된다.
    • 차이점
      • SSH는 암호화를 통해 데이터의 기밀성과 무결성을 보장한다.
      • Telnet과 달리 SSH는 보안이 뛰어나며, 현대 네트워크 환경에서 표준으로 사용된다.

 

출처:https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcMoTIU%2FbtrNoDDNB06%2FpY5orxrX4DP6RZ5A9JZS60%2Fimg.png


2. HTTP와 HTTPS의 특징 및 차이점

  • HTTP와 HTTPS는 웹 브라우저와 웹 서버 간에 정보를 주고받기 위한 프로토콜이다. 이 두 프로토콜은 OSI 7계층 모델의 응용 계층에 속하며, 웹 페이지를 요청하고 응답받는 역할을 한다. 여기에는 HTML, 이미지, 영상 등의 다양한 콘텐츠가 포함될 수 있다. 하지만 보안 측면에서 두 프로토콜은 큰 차이점이 있다.

 

  • HTTP (Hypertext Transfer Protocol)
    • 설명
      • HTTP는 웹 브라우저와 웹 서버 간의 하이퍼텍스트 문서 전송을 위한 프로토콜이다.
    • 동작 방식
      • 사용자가 웹 브라우저에서 URL을 입력하면, HTTP 프로토콜이 해당 요청을 서버로 전송하고 서버는 요청된 웹 페이지를 응답한다.
      • 이 과정에서 데이터는 평문으로 전송된다.
    • 특징
      • HTTP는 기본적으로 80번 포트를 사용하며, 데이터는 암호화되지 않은 상태로 전송된다.
    • 예시
      • 뉴스 웹사이트에 접속하여 기사 내용을 확인하는 것과 같은 비공식적인(보안이 중요하지 않은) 웹 서핑에 사용된다.
    • 차이점
      • HTTP는 데이터를 암호화하지 않고 전송하므로, 민감한 정보를 주고받는 데 적합하지 않다.
      • FTP와 비교해 HTTP는 주로 웹 콘텐츠 전송에 사용되며, 간단한 요청-응답 모델을 따른다.
      • HTTP는 상태 비저장(stateless) 방식이며, 데이터는 보통 짧은 연결을 통해 전송된다.

 

 

  • FTP와 HTTP의 차이점
    • HTTP는 웹 콘텐츠 전송에 적합하고, 캐싱 기능이 있지만 대용량 페이지에서 속도가 느려질 수 있다. FTP는 대용량 파일 전송에 효과적이지만 기본적으로 보안이 취약하며 설정이 복잡할 수 있다.
    • FTP는 별도의 제어(port 21)와 데이터 채널(port20)을 사용하고, HTTP는 단일 채널(port 80)을 사용한다.
    • 보안 측면에서 두 프로토콜 모두 암호화되지 않으므로 민감한 정보를 전송할 때는 HTTPS와 같은 보안 프로토콜을 사용하는 것이 좋다.

  • HTTPS (Hypertext Transfer Protocol Secure)
    • 설명
      • HTTPS는 HTTP에 SSL/TLS 암호화가 추가된 프로토콜로, 안전한 웹 통신을 제공한다.
    • 동작 방식
      • HTTPS는 SSL/TLS를 통해 브라우저와 서버 간의 통신을 암호화한다.
      • 이로 인해 중간에서 데이터를 가로채거나 변조하는 것이 매우 어렵다.
    • 특징
      • HTTPS는 기본적으로 443번 포트를 사용하며, 암호화된 채널을 통해 데이터를 전송하여 보안을 보장한다.
    • 예시
      • 온라인 쇼핑몰에서 결제 정보를 입력하거나 이메일 로그인을 수행할 때 사용된다.
    • 차이점
      • HTTPS는 SSL/TLS를 통해 데이터를 암호화하며, HTTP보다 안전한 통신을 제공한다.
      • HTTP에 비해 성능이 조금 떨어질 수 있지만, 보안성이 훨씬 높다.
    • SSL/TLS란?
      • SSL/TLS는 응용계층과 전송계층 사이에서 동작하는 독립적인 인터넷 암호화 통신 프로토콜이다.
      • 응용계층의 HTTP 프로토콜에서 사용자의 데이터를 받고 전송계층으로 캡슐화되기 이전에 SSL 프로토콜에 의해 데이터가 암호화된다. 반대 과정도 마찬가지로 복호화를 하고 응용계층으로 보낸다.
      • SSL: 초기 암호화 프로토콜로 현재는 보안 취약점 때문에 사용되지 않는다.
      • TLS: SSL의 후속 프로토콜로, 보안과 성능이 향상된 최신 버전이 사용된다.

출처:https://hostilica.com/wp-content/uploads/2021/06/HTTP-vs-HTTPS.jpg


3. DNS의 특징

  • 설명
    • DNS는 도메인 이름을 IP 주소로 변환해 주는 시스템이다. 이 프로토콜은 OSI 7계층 모델의 응용 계층에 속하며, 사용자가 웹사이트에 쉽게 접근할 수 있도록 돕는다.
  • 동작 방식
    • 사용자가 웹 브라우저에 도메인 이름을 입력하면, DNS 서버는 해당 도메인에 대한 IP 주소를 찾아 웹 브라우저에 전달한다.
    • 이 과정에서 로컬 DNS 캐시, 루트 DNS 서버, 권한 DNS 서버 등이 계층적으로 협력하여 요청을 처리한다.
  • 특징
    • DNS는 계층적 구조를 가지며, 전 세계적으로 분산된 시스템이다.
    • 캐싱 메커니즘을 통해 요청 속도를 높이며, 기본적으로 UDP 53번 포트를 사용한다.
  • 예시
    • 사용자가 www.google.com을 입력하면, DNS는 이를 IP 주소로 변환하여 사용자가 구글 서버에 접속할 수 있도록 한다.
  • 단점
    • DNS는 단순히 이름을 IP 주소로 변환하는 기능을 하지만, 보안에 취약할 수 있어 DNSSEC 등의 보안 확장이 필요하다.
    • DNS는 웹사이트에 접근할 때 중요한 역할을 하며, 이로 인해 DDoS 공격 등의 표적이 될 수 있다.

 

출처:https://d1.awsstatic.com/Route53/how-route-53-routes-traffic.8d313c7da075c3c7303aaef32e89b5d0b7885e7c.png

 

 

*PPT

[7주차]계층별 프로토콜(2).pptx
1.84MB

출처

HTTPS와 SSL/TLS: 웹 보안의 기본 이해 (f-lab.kr)DNS 서버란 무엇일까요? | Akamai

DNS 서버란 무엇일까요? | Akamai

리팩토링 6주차. OSI 계층별 프로토콜 특징 (2) — IT 이모저모 (tistory.com)

 

'Security > Network' 카테고리의 다른 글

악성코드  (0) 2024.08.27
Firewall, DDoS, IDS 와 IPS 의 특징 및 차이점  (0) 2024.08.24
계층별 주요 프로토콜(1)  (0) 2024.08.10
OSI 계층 별 장비  (2) 2024.07.23
TCP와 UDP의 특징 및 차이점  (0) 2024.07.16

계층별 주요 프로토콜 특징 (2) :: West_Cold (tistory.com)

 

계층별 주요 프로토콜 특징 (2)

계층별 프로토콜(1) :: West_Cold (tistory.com) 계층별 프로토콜(1)프로토콜이란?프로토콜(protocol)프로토콜은 네트워크 통신 규칙을 정의하는 것이다. 각 프로토콜은 특정한 기능을 수행하며, 데이터를

eatitstory.tistory.com

 

위에 계층별 주요 프로토콜 2편 링크를 걸어두겠다.

 

프로토콜이란?

프로토콜(protocol)

프로토콜은 네트워크 통신 규칙을 정의하는 것이다. 각 프로토콜은 특정한 기능을 수행하며, 데이터를 어떻게 전송할지, 수신할지를 규정한다. 예를 들어, HTTP는 웹 페이지를 요청하고 전달하는 규칙을 정의하고, SMTP는 이메일을 전송하는 규칙을 정의한다.

포트(port)

포트는 네트워크 상에서 특정 프로토콜이 사용하는 통신 채널이다. 각 프로토콜은 일반적으로 특정 포트 번호에 할당되어 있으며, 이 포트 번호를 통해 데이터가 해당 프로토콜을 사용하는 서비스나 애플리케이션으로 전달된다.

→ 프로토콜은 특정 포트를 사용해 데이터를 전송하거나 수신하고, 포트 번호는 어떤 프로토콜이 데이터를 처리하는지 번호를 보고 식별 가능하다.

출처: http://www.jidum.com/upload/ckeditor/2016/09/20160908095523606.png

 


FTP(File Transfer Protocol)

파일을 송수신 할 때 사용되는 OSI 7계층 프로토콜이.
데이터 전송을 관리하기 위해 제어 채널과 데이터 채널을 사용한다.
암호화가 되지 않아 보안이 취약하다.
 

제어 채널(control channel)

-클라이언트와 서버 사이의 명령, 제어 등을 담당

-port 21

-명령어와 상태 정보가 교환된다.

 

데이터 채널(data channel)

-클라이언트와 서버 사이의 직접적인 파일 송수신을 담당

-port 20

-실제 파일 전송이 이루어진다.

 


액티브 모드 (Active Mode)

1)클라이언트는 서버의 21 포트로 접속한 후에 자신이 사용할 두 번째 포트를 서버에 미리 알려준다
2)서버는 클라이언트의 요청에 응답한다
3)서버의 20번 데이터 포트는 클라이언트가 알려준 두 번째 포트로의 접속을 시도한다
4)클라이언트가 서버의 요청에 응답한다

출처: https://madplay.github.io/img/post/2019-03-09-ftp-active-passive-1.png

액티브 모드 (Active Mode) 특징

서버가 클라이언트에게 데이터를 보낼 때, 서버가 클라이언트의 데이터 포트로 직접 연결을 시도한다.
클라이언트의 방화벽이나 NAT(Network Address Translation) 설정에 따라, 서버의 연결 시도가 차단될 수 있다.

 


패시브 모드 (Passive Mode)

1)클라이언트가 제어 포트로 접속을 시도한다(패시브 모드 연결)
2)서버에서는 사용할 두 번째 (임의)포트를 클라이언트에게 알려준다
3)클라이언트는 다른 포트를 열어 서버가 알려준 포트로 접속을 시도한다
4)서버가 클라이언트의 요청에 응답한다

출처: https://madplay.github.io/img/post/2019-03-09-ftp-active-passive-2.png

패시브 모드 (Passive Mode) 특징

클라이언트가 서버의 데이터 포트로 직접 연결을 시도하여 데이터를 전송 받는다.
클라이언트 측 방화벽이 서버로의 연결을 쉽게 허용하기 때문에, 현대 네트워크 환경에서 자주 사용된다.
Passive 모드에선 Active 모드에서 사용한 20번 포트를 사용하지 않고 1024번 이후의 임의 포트를 데이터 채널 포트로 사용한다.

 

SMTP, POP3, IMAP

이메일 전송 시 사용하는 7계층 프로토콜이며 각자 다른 목적을 위해 사용된다.
메일이 전송된다는 것은 송신자가 수신자에게 메일을 전송하는 것이 아닌, 클라이언트가 메일 서버로 메일을 전송한다는 것을 의미(수신 또한 마찬가지)

출처: https://cdn.imweb.me/upload/S20210713e59ce6c5de599/a7ba327d67f78.png


SMTP(Simple Mail Transfer Protocol)

이메일 전송을 담당하는 프로토콜이다.
서버 간 전송에는 포트 25, 클라이언트-서버 간 전송에는 포트 587번을 사용한다.
메일 전송만을 담당하며, 전송 취소나 저장에는 관여하지 않는다.

 


POP3(Post Office Protocol version 3)

이메일 수신을 담당하는 프로토콜이다.
이메일을 클라이언트 기기로 다운로드하고, 다운로드 후 서버에서 해당 이메일을 삭제한다.
포트 110(표준), 포트 995(보안)사용한다.
오프라인 상태에서 (다운로드 한)이메일을 볼 수 있지만, 여러 기기 간 동기화(읽음/안읽음 상태…)는 지원하지 않는다.
불편함이 있지만 보안이 안전하다.

IMAP(Internet Message Access Protocol)

이메일 수신을 담당하는 프로토콜이다.
서버에 저장된(기기x) 이메일을 여러 기기에 접근하고 관리할 수 있게 해준다.
포트 143(표준), 포트 993(보안)사용한다.
이메일 상태를 동기화하고, 여러 기기에서 이메일을 동시에 관리할 수 있다.
보안에 취약하다.

 

출처: https://www.mailtrim.com/data/images/3537


 

ICMP(Internet Control Message Protocol)

3계층(네트워크 계층)에서 작동하며, 주로 네트워크 오류 보고 및 진단 정보를 제공하는 프로토콜이다.(오류 및 데이터 도달 시간 등..)
ICMP는 네트워크 계층의 프로토콜로, 포트 번호(x) 대신 IP 주소를 통해 송수신자를 식별한다.
ICMP 메시지는 IP 패킷에 캡슐화 되어 전송된다.
데이터 전송 전에 연결을 확립하지 않기 때문에 신뢰성이 있는 데이터 전송을 보장하지 않으며, 연결 설정을 하지 않고 메시지를 전송한다(NO Handshaking)
Ping 명령어  활용하여 네트워크의 상태를 진단하고 문제를 해결한다.
TypeCode를 통해 메시지를 파악할 수 있다.

 

출처: https://download.huawei.com/mdl/image/download?uuid=9c21763198b14ae78941f0493a33605d / https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSRj7D%2FbtqEIUV46kh%2FID787DVPJ8r45UeI2qQWzK%2Fimg.png


ICMP 동작 방식

IP Datagram Encapsulation: ICMP 메시지는 IP 헤더와 함께 IP 패킷의 데이터 부분에 포함되어 전송된다. IP 헤더의 protocol 필드는 ICMP를 식별하는 데 사용된다.
Error Reporting: 오류가 발생하면, ICMP오류 메시지를 원본 IP 패킷의 송신자로 반환한다. 오류 메시지는 네트워크 문제를 진단하는 데 중요한 정보를 제공한다.
Ping Processing: Ping 명령어를 사용하여 Echo Request 메시지가 네트워크를 통해 특정 호스트에 전송되면, 수신 호스트는 Echo Reply 메시지로 응답하여 네트워크 연결 상태를 확인한다. (정상응답)/ 앞에 과정이 아니고 오류가 나면 오류 메시지가 나온다

ICMP 오류 메시지 종류

Destination Unreachable: 이 오류 메시지는 IP 패킷이 지정된 목적지에 도달할 수 없을 때 발생한다. 오류의 원인에는 네트워크, 호스트, 프로토콜, 포트가 사용 불가능한 경우가 포함될 수 있다.(내 잘못)
Time Exceeded: TTL(Time To Live) 값이 0이 되었을 때 발생하며, 이는 네트워크 루프를 방지하기 위한 것이다. 또한, 패킷 조각화(fragmentation) 과정에서 재조립 시간이 허용된 시간을 초과했을 때도 발생한다.(목적지까지 갔는데 응답을 못 받음_상대 잘못)
Redirect Message: 이 메시지는 라우터가 호스트에게 최적의 경로를 제안할 때 사용된다. 네트워크 경로를 최적화하기 위해 라우팅 정보를 업데이트하는 데 도움이 된다. (남의 라우팅을 수정 할 수 있어 악용 될 수 있다)

 

 

*PPT

[6주차]계층별 프로토콜(1).pptx
2.42MB

 

 

 

*참고자료

OSI 7 계층별 프로토콜(FTP, SMTP, POP3, IMAP, ICMP) — 리빗의 기술노트 (tistory.com)

리팩토링 5주차. OSI 계층 별 프로토콜 특징 (1) — IT 이모저모 (tistory.com)

FTP ActivePassive 차이 (madplay.github.io)

지식덤프 (jidum.com)

ICMP? ICMP 프로토콜 설명 - AWS (amazon.com)

 

 

'Security > Network' 카테고리의 다른 글

Firewall, DDoS, IDS 와 IPS 의 특징 및 차이점  (0) 2024.08.24
계층별 주요 프로토콜(2)  (0) 2024.08.12
OSI 계층 별 장비  (2) 2024.07.23
TCP와 UDP의 특징 및 차이점  (0) 2024.07.16
OSI 7 Layer  (1) 2024.07.16

1계층 물리 계층의 장비

리피터 (Repeater)

  • 역할: 리피터는 신호를 증폭하여 더 먼 거리까지 전송할 수 있도록 도와준다.
  • 특징:
    • 신호의 감쇠를 방지한다.
    • 동일한 네트워크 유형에서만 사용할 수 있다.
    • 두 개의 세그먼트를 연결하는 데 사용된다.
  • 용도: 장거리 전송이 필요한 네트워크에서 사용되며, 요즘에는 리피터가 홀로 쓰이는 경우는 거의 없고 다른 장비들의 하위 기능중 하나로 통합되어 가는 추세다.

*세그먼트는 경우에 따라서 의미가 다르다. 4계층의 데이터 전송 단위인 TCP-세그먼트도 있고 하지만 여기서는 세그먼트란 하나의 큰 네트워크를 구성하는 작은 네트워크들을 세그먼트라고 한다.

출처:https://miro.medium.com/v2/resize:fit:1100/format:webp/1*Qs9UXwEaROlrEeckXNwCGA.png

 

허브 (Hub)

  • 역할: 허브는 여러 네트워크 장치들을 하나의 네트워크로 연결 시켜주며, 리피터처럼 신호를 받아 증폭해 주는 기능을 할 수 있다.
  • 특징:
    • 단순히 많은 사람들이 사용하기 위한 목적으로 사용된다
    • 모든 포트로 동일한 데이터를 전송하여, 모든 장치가 같은 데이터를 받는다.
    • 트래픽이 많아지면 충돌이 발생할 수 있다.
    • 네트워크 성능이 저하될 수 있습니다.
  • 용도: 소규모 네트워크에서 사용되며, 현대의 네트워크에서는 거의 사용되지 않다.

출처:https://miro.medium.com/v2/resize:fit:828/format:webp/1*2E0MsbTWW7FnfIEeLPlAMw.png

 

모뎀 (Modem)

  • 역할: 모뎀은 디지털 신호를 아날로그 신호로 변환하여 전송하고, 수신된 아날로그 신호를 디지털 신호로 변환한다.
  • 특징:
    • 데이터 전송을 위해 전화선, 케이블, 위성 등을 사용할 수 있다.
    • 전송 매체에 따라 다양한 종류가 있다(DSL 모뎀, 케이블 모뎀 등).
  • 용도: 인터넷 서비스 제공자(ISP)와의 연결을 위해 가정이나 사무실에서 사용된다.

출처: https://miro.medium.com/v2/resize:fit:450/format:webp/1*XM3KyaHPS7Pg_MvvxrubKg.png

 

케이블 (Cable)

  • 역할: 케이블은 데이터를 전송하기 위한 물리적 매체로 사용된다.
  • 특징:
    • 다양한 유형의 케이블이 있다: 동축 케이블, UTP 케이블, 광섬유 케이블 등.
    • 케이블의 유형에 따라 데이터 전송 속도와 거리가 다르다.
    • 동축 케이블: 중간 정도의 속도와 거리, 주로 TV 및 초기 네트워크에 사용.
    • UTP 케이블: 이더넷 네트워크에서 가장 많이 사용되며, 적절한 속도와 거리 제공.
    • 광섬유 케이블: 매우 높은 속도와 긴 거리, 데이터 센터 및 장거리 통신에 사용.
  • 용도: 네트워크 장비들 간의 물리적 연결을 제공한다.

출처:https://img1.daumcdn.net/thumb/R800x0/?scode=mtistory2&fname=https%3A%2F%2Ft1.daumcdn.net%2Fcfile%2Ftistory%2F211CB03D56DABC0334 // https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FckiyOp%2FbtsFhfDbaV5%2FzpKfMka4RyX77nUvlfYMUK%2Fimg.jpg/ // https://fibconet.com/wp-content/uploads/2021/12/Fiber-optic-cable-BP.jpg

(왼쪽부터 동축/UTP/광)

 

2계층 데이터 링크 계층의 장비

브릿지 (Bridge)

  • 역할: 하나의 네트워크 내에서 서로 다른 LAN을 연결하여 네트워크의 크기를 확장한다.
  • 특징:
    • MAC 주소 기반: MAC 주소를 이용하여 프레임의 전송 포트를 결정한다.
    • 트래픽 제어: 트래픽을 통제하여 대역폭을 효율적으로 사용한다.
    • 리피터 기능: MAC 주소 기반으로 리피터 기능을 제공한다.

L2 스위치 (Layer 2 Switch)_필수

  • 역할: 프레임의 목적지 MAC 주소를 기반으로 데이터 전송을 수행한다. 브리지와 리피터 기능을 동시에 수행할 수 있다.
  • 특징:
    • 프레임 전송: 목적지 MAC 주소를 가진 포트에만 프레임을 전송한다.
    • 속도: 하드웨어 기반으로 빠르게 처리한다.
    • 동작 계층: L2 스위치는 다양한 계층에서 동작할 수 있으며, 동작하는 계층에 따라 명칭이 변경된다.(숫자가 올라갈 수록 그 아랫번호 스위치의 기능이 업그레이드가 되며 비용이 비싸진다)

출처:https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTXPxbiL-0ShobqEjovSWwftpq54PR2AzJPJg&s

 

허브와 스위치의 차이점

출처:https://mblogthumb-phinf.pstatic.net/MjAyMDExMjBfMTY4/MDAxNjA1ODQ3ODkzNzM4._zzZXk2fGes_OvJ6_0W0kNcQuMyU0oMDv62FPRpNpI8g._bD64OIIEDk_unaBL4vCbJlz8RT4FNLWQ3zmFIjo0LYg.PNG.bizblocklll/image.png?type=w800

 

1. Collision Domain

  • 허브: 모든 포트가 같은 충돌 도메인에 속하므로, 동시에 여러 장치가 데이터를 전송하면 충돌이 발생한다. 이로 인해 패킷 손실이 발생할 수 있다.
  • 스위치: 각 포트가 개별적인 충돌 도메인에 속하므로, 충돌이 발생하지 않는다. 패킷 손실률이 낮다.

2. 속도

  • 허브: 모든 포트가 동일한 속도를 지원한다. 데이터 전송 속도가 포트 수에 비례하여 감소할 수 있다.
  • 스위치: 각 포트가 독립적으로 높은 속도를 지원하여, 속도가 거의 동일하게 유지된다.

3. 기본 기능

  • 허브: 모든 포트에 데이터를 전송하여 불필요한 데이터 전송이 발생한다.
  • 스위치: MAC 주소 기반으로 데이터를 전송하여 네트워크 효율성을 높인다.

 

스위치의 기본적인 수행 기능

  1. Learning: 출발지 주소가 MAC 테이블에 없으면, MAC 주소와 포트를 MAC 테이블에 저장한다.
  2. Flooding: 목적지 주소가 MAC 테이블에 없으면, 전체 포트로 데이터를 전달한다 (브로드캐스팅).
  3. Forwarding: 목적지 주소가 MAC 테이블에 있으면, 해당 포트로만 데이터를 전달한다 (유니캐스팅).
  4. Filtering: 출발지와 목적지가 같은 세그먼트에 있을 때는 다른 세그먼트로 데이터를 보내지 않는다 (충돌 도메인).
  5. Aging: 오래된 MAC 테이블 데이터를 삭제한다 (Aging Timer).

 

브릿지와 스위치의 차이점

 

                                              브릿지 (Bridge)                                                스위치 (Switch)

처리 방식 소프트웨어 방식 하드웨어 방식
속도 포트들이 모두 같은 속도 지원 서로 다른 속도 지원
포트 수 적음 (2~3개) 많음 (수십~수백개)
프레임 처리 방식 Store-and-forward Cut-through, Store-and-forward, Fragment-Free
주요 장점 에러 복구 능력 빠른 처리 속도, 다양한 포트 수

Store-and-Forward와 Cut-Through 방식

  • Store-and-Forward: 들어오는 프레임을 전부 받아들인 후 에러 검사를 하고, 에러가 없으면 전송을 시작한다. 에러 복구 능력이 뛰어나지만 처리 속도가 상대적으로 느리다.
  • Cut-Through: 프레임의 목적지 주소만 확인한 후 바로 전송을 시작한다. 빠른 처리 속도를 가지지만, 에러를 감지하기 어려울 수 있다.
  • Fragment-Free: Store-and-Forward와 Cut-Through의 장점을 결합한 방식으로, 프레임의 일부만 확인하여 에러 감지 능력을 향상시킨다.

 

3계층 네트워크 계층의 장비

라우터 (Router)_필수

  • 역할: 라우터는 네트워크 간의 데이터 패킷을 경로 설정을 통해 전달한다.
  • 특징:
    • IP 주소 기반 데이터 전달: 라우터는 데이터 패킷의 목적지 IP 주소를 확인하고 다음 라우터로 전달하며(패킷 포워딩), 최적의 경로를 통해 패킷을 전달한다.
    • 네트워크 간 연결: 서로 다른 네트워크를 연결하여 통신이 가능하도록 한다.
    • 경로 선택 (라우팅): 서로 다른 네트워크 간의 트래픽을 관리하고 최적화 시키며, 최적의 경로를 선택하여 데이터 전송 속도와 효율성을 높인다.
    • 보안 기능: ACL(Access Control List)을 사용하여 특정 트래픽을 허용하거나 차단하는 등의 보안 기능을 제공합니다.
  • 용도: 가정, 사무실, 기업 등 다양한 규모의 네트워크에서 사용되며, 인터넷과 같은 대규모 네트워크 연결에서도 중요한 역할을 한다.

출처:https://velog.velcdn.com/images%2Fapril_5%2Fpost%2F4bd6805d-8bfd-4344-9f82-d4363be3e55c%2Fimage.png // https://miro.medium.com/v2/resize:fit:640/format:webp/1*aqXMUfPm4ZE9RzmViNrxgQ.png


정적 라우팅 (Static Routing)

  • 정의: 관리자가 수동으로 라우팅 테이블에 경로를 설정하는 방식.
  • 특징:
    • 간단한 설정: 소규모 네트워크에 적합하며, 설정이 비교적 간단하다.
    • CPU 부담이 적음: 라우터의 CPU 사용량이 적어 효율적이다.
    • 유연성 부족: 네트워크 환경 변화에 따라 경로를 수동으로 변경해야 하므로 유연성이 떨어진다.
    • 고정된 경로: 경로가 고정되어 있어, 장애 발생 시 대처가 어려울 수 있다.
    • 보안 취약성: 중간 경로가 노출되기 때문에 보안에 취약함
  • 용도: 변동이 적고 단순한 네트워크 환경에서 사용된다.

동적 라우팅 (Dynamic Routing)

  • 정의: 라우터가 자동으로 라우팅 테이블을 업데이트하고 경로를 학습하는 방식.
  • 특징:
    • 자동 경로 업데이트: 네트워크 변화에 따라 자동으로 최적 경로를 업데이트하여 유연성을 제공한다.
    • 라우팅 프로토콜 사용: OSPF, EIGRP, BGP 등의 라우팅 프로토콜을 사용하여 경로를 동적으로 결정한다.
    • 복잡한 설정: 초기 설정이 복잡할 수 있지만, 대규모 네트워크 환경에 적합하다.
  • 용도: 대규모 네트워크, 인터넷, 기업 네트워크 등 복잡하고 변화가 잦은 환경에서 사용된다.

 

L3 스위치 (Layer 3 Switch)

  • 역할: 스위치와 라우터의 기능을 결합하여 데이터 링크 계층과 네트워크 계층에서 모두 작동한다.
  • 기능:
    • 스위치의 기본 수행 기능: Learning, Flooding, Forwarding, Filtering, Aging.
    • VLAN: 가상 LAN을 통해 특정 포트들을 하나의 논리적 네트워크로 묶어 불필요한 트래픽을 차단.
    • 트래픽 체크 기능: 네트워크 트래픽을 모니터링하고 관리하여 효율성을 높임.
    • 라우팅 기능: 라우터처럼 IP 주소 기반으로 데이터를 라우팅.

 

4계층 전송 계층의 장비

게이트웨이 (Gateway)

  • 역할: 서로 다른 네트워크망을 연결한다. 물리적 장비가 아닌 논리적 장비로, 다양한 네트워크 프로토콜을 변환할 수 있다.
  • 특징: 특정 계층에 종속되지 않고, 다양한 네트워크 형태를 연결할 수 있다.

출처:https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FL9Dnq%2FbtrxQ5CV49Z%2FxWDnsTheh0JnMcEpYYkySk%2Fimg.png

 

L4 스위치 (Layer 4 Switch)

  • 역할: 전송 계층에서 동작하며, IP 주소와 포트를 기반으로 스위칭을 수행한다.
  • 특징: 서버나 네트워크의 트래픽을 로드 밸런싱하고, 프로토콜에 따라 스위칭 우선 순위를 설정한다.

*로드밸런싱: 네트워크 트래픽을 여러 서버나 네트워크 장비에 고르게 분산시켜 시스템의 성능과 신뢰성을 향상시키는 기술

*스위칭: 네트워크 장비 간에 데이터를 효율적으로 전달하기 위해 MAC 주소나 IP 주소를 기반으로 패킷을 올바른 포트로 전송하는 기술

 

7계층 응용 계층의 장비

L7 스위치(Layer 7 Switch)

  • 포함되는 기능: 네트워크 보안 장비의 역할을 하며, L5(세션 계층)와 L6(표현 계층) 기능을 포함한다.
  • 패킷 분석: 패킷을 분석하여 어떤 데이터인지 식별할 수 있습니다. 이를 통해 웹 방화벽 및 보안 스위치 기능을 수행한다.
  • 보안 강화: 이메일의 제목이나 내용, HTTP 요청, URL, FTP 파일명, 쿠키 정보, 특정 바이러스 패턴 등을 분석하여 보안에 유리하다.
  • 정교한 로드 밸런싱: 데이터를 세밀하게 분석하여 정교한 로드 밸런싱이 가능하며, 애플리케이션 성능을 최적화다.

 

추가 팁

네트워크 통신을 하려면 각 계층을 통해 캡슐화가 되어 물리적 통신인 케이블로 비트가 전송되는 걸로 아는데 그러면 컴퓨터 내부는 캡슐화를 컴퓨터 내부에서 만들어서 케이블로 전기적 신호를 보내는 건가?
->그렇다. 운영체제와 NIC가 컴퓨터 내부에서 컴퓨터 외부의 각 계층 장비의 역할을 수행한다.(보안전문가를 위한 내용을 다루기 때문에 네트워크단 엔지니어 영역은 일부 필요 내용만 다루니 이 정도만 알고 가자)

 

*PPT

[5주차]OSI 계층 별 장비.pptx
4.81MB

 

*참고자료

OSI 7 Layer과 네트워크 관련장비 (tistory.com).

계층별 장비(OSI 7) (tistory.com).

계층 별 장비 (tistory.com)

3. OSI 계층 별 장비 (velog.io)

'Security > Network' 카테고리의 다른 글

Firewall, DDoS, IDS 와 IPS 의 특징 및 차이점  (0) 2024.08.24
계층별 주요 프로토콜(2)  (0) 2024.08.12
계층별 주요 프로토콜(1)  (0) 2024.08.10
TCP와 UDP의 특징 및 차이점  (0) 2024.07.16
OSI 7 Layer  (1) 2024.07.16

TCP와 UDP의 특징 및 차이점

7계층 중 전송 계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하는 계층으로, 데이터의 전달을 담당한다.
데이터를 보내기 위해 사용하는 프로토콜에는 TCP와 UDP가 있다.

출처:https://user-images.githubusercontent.com/54384004/73795474-0c28a400-47ee-11ea-81b5-0325aba220e3.png

 

TCP (Transmission Control Protocol)

  • 연결지향형 프로토콜: 데이터 전송 전 연결(논리적)을 설정하고, 데이터 전송 후 연결을 해제.
  • 높은 신뢰성: 흐름제어, 혼잡제어, 오류검출 기능을 제공.
  • 1:1 유니캐스트 통신: 단일 송신자와 단일 수신자 간의 통신을 지원.(멀티x)

UDP (User Datagram Protocol)

  • 비연결형 프로토콜: 데이터 전송 전 연결 설정 없이 바로 전송.
  • 빠른 속도: 데이터의 신속한 전송이 가능.
  • 1:1, 1:다, 다:다 통신 가능: 브로드캐스트 및 멀티캐스트 지원.

출처:https://user-images.githubusercontent.com/54384004/73796232-1481de80-47f0-11ea-855e-4bf8735faa30.png



TCP의 특징 및 구조

인터넷상에서 데이터를 메시지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜(논리적 경로)

출처:https://user-images.githubusercontent.com/54384004/73796311-3aa77e80-47f0-11ea-82c8-079cc1989c4d.png

 
+위 표 정보 외 추가 정보
*송신자와 수신자가 모두 소켓이라고 하는 종단점을 생성
*데이터 손실 등이 있을 경우 재전송 요청을 하므로 연속성있는 서비스에는 부적합 하다.
*전이중(full-duplex), 점대점(point-to-point) 방식이다.

  • 전이중 : 전송이 양방향으로 동시에 일어날 수 있다.
  • 점대점 : 각 연결이 정확히 2개의 종단점(소켓)을 가지고 있음을 의미한다.


TCP 헤더 구조

 
TCP 헤더는 데이터 전송의 신뢰성과 흐름제어, 혼잡제어를 위해 다양한 필드를 포함한다.

출처:https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkJckh%2FbtsFygVZGHz%2FpCCBK9RZAeB4ZhZYOjkoe1%2Fimg.png https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbcuSVe%2FbtrzQnOKHee%2F8ViefWfmEhBwMrzXjBDSv1%2Fimg.png

 
TCP 헤더의 크기

  • 기본적으로 20bytes
  • 옵션을 포함하면 최대 60bytes


발신지 포트와 목적지 포트 (16비트): 송수신 측의 포트 번호.

  • port 번호와 함께 IP 헤더에 있는 source/destination address를 이용하여 유일한 식별되는 통신연결을 만들 수 있게 됨
  • 크기는 각 16bit로, 0~65536 사이의 포트번호를 표시한다.


시퀀스 번호 (32비트): 데이터의 순서를 나타내며, 수신자가 데이터 조립 시 사용.

  • 32bit를 할당받음
  • 이 시퀀스 번호 덕분에, 수신자는 쪼개진 세그먼트의 순서를 파악해 순서 및 도착을 보장
  • 최초로 데이터를 전송할 때는 랜덤한 수로 초기화를 시키고 보낼 데이터의 1byte(8bit)당 시퀀스 번호를 1씩 증가시키며 데이터의 순서를 표현
  • 쵀대 4,294,967,296까지 수를 담을 수 있으며, 넘어갈 경우 다시 0부터 시작


승인 번호 (32비트): 다음에 수신할 데이터의 시퀀스 번호.

  • 32bit를 할당받음
  • 연결 설정과 해제 시 발생하는 핸드쉐이크 과정에는 상대방이 보낸 시퀀스 번호 + 1(다음 시퀸스 번호)
  • 실제로 데이터를 주고 받을 때는 상대방이 보낸 시퀀스 번호 + 자신이 받은 데이터의 bytes

출처:https://evan-moon.github.io/static/4c5dc85683ae837d23500d773f219316/d9199/ack.png


데이터 오프셋 (4비트): 데이터가 시작하는 위치.

  • 전체 세그먼트 중에서 헤더가 아닌 데이터가 시작되는 위치가 어디부터인지를 표시 (옵션 필드의 길이가 고정되어 있지 않기 때문에 필요한 필드)
  • 이 오프셋을 표기할 때는 32비트 워드 단위 사용. (1word = 4bytes) 이 필드 값에 4를 곱하면 세그먼트의 헤더를 제외한 실제 데이터의 시작 위치를 알 수 있음
  • 4bit를 할당 받음. 0000~1111 범위를 표현할 수 있으므로 0~15 word * 4bytes로 0~60bytes의 오프셋까지 표현할 수 있음. 단, 옵션 필드를 제외한 나머지 필드는 필수로 존재해야하기 때문에 최솟값은 20bytes(5 word)로 고정


예약 필드 (3비트): 미래를 위한 예약 필드.

  • 3bit를 할당받음. 000으로 찍힘


플래그 비트 (9비트): 세그먼트의 속성.
 
*Flag: 무엇인가를 기억해야 하거나 또는 다른 프로그램에게 약속된 신호를 남기기 위한 용도로 프로그램에서 사용되는 미리 정의된 비트를 의미합니다.
*패킷: 인터넷 내에서 데이터를 보내기 위한 경로배정(라우팅)을 효율적으로 하기 위해서 데이터를 여러 개의 조각들로 나누어 전송을 하는데 이때, 이 조각을 패킷이라고 한다.
 
SYN: 연결 설정.

  • TCP에서 세션을 성립할 때(연결) 가장 먼저 보내는 패킷. 시퀀스 번호를 임의로 설정하여 세션을 연결하는데 사용되며 초기에 시퀀스 번호를 보내게 된다.

ACK: 승인 번호 유효.

  • 상대방으로부터 패킷을 받았다는 것을 알려주는 패킷으로, 다른 Flag와 같이 출력되는 경우도 있다. 송신 측에서 수신 측 시퀀스 번호에 TCP 계층에서 길이 또는 데이터 양을 더한 것과 같은 ACK를 보낸다. (일반적으로 +1을 하여 보 냅니다) ACK 응답을 통해 보낸 패킷에 대한 성공, 실패를 판단하여 재전송 하거나 다음 패킷을 전송한한다.

FIN: 연결 종료.

  • 세션 연결을 종료시킬 때 사용되며, 더이상 전송할 데이터가 없음을 나타낸다.

RST: 연결 재설정.

  • 재설정(Reset)을 하는 과정이며 양방향에서 동시에 일어나는 중단 작업. 비정상적인 세션 연결 끊기에 해당한다. 이 패킷을 보내는 곳이 현재 접속하고 있는 곳과 즉시 연결을 끊고자 할 때 사용한다.

PSH: 즉시 전달.

  • 버퍼가 채워지기를 기다리지 않고 데이터를 받는 즉시 전달하는 Flag. 데이터는 버퍼링 없이 OSI 7 Layer Application Layer의 응용프로그램으로 바로 전달한다. 

URG: 긴급 데이터.

  • 긴급한 데이터의 우선순위를 다른 데이터의 우선순위보다 높여 긴급하게 데이터를 전달하는 Flag.

NS, CWR, ECE: 혼잡 제어.

  • 전문성이 높고 사용 빈도도 적어 간단하게 혼잡 제어에 사용된다고만 이해하자



윈도우 크기 (16비트): 한번에 수신할 수 있는 데이터의 양. 흐름제어의 기능을 담당.

체크섬 (16비트): 오류 검출.

  • 데이터를 송신하는 중에 발생할 수 있는 오류를 검출하기 위한 값
  • 송신 측에서 전송할 데이터를 16bit씩 나눠 Warp Around 방식으로 차례로 더한 값의 1의 보수 값을 체크섬 값으로 지정한다.
  • 수신 측은 데이터를 받아 동일한 방식으로 값을 더해 1의 보수를 취하지 않은 값과 체크섬을 더하여 모든 비트가 1인지 확인한다. (모든 비트가 1이면 데이터가 정상이라고 판단)


긴급 포인터 (16비트): 긴급 데이터의 시작 위치.

  • 일반 데이터 내에서 긴급 데이터가 시작되는 위치 정보
  • URG 플래그가 1이라면 수신 측은 이 포인터가 가리키고 있는 데이터를 우선 처리


옵션 (가변 길이): TCP 확장 기능.

  • TCP의 기능을 확장할 때 사용하는 필드들이며, 이 필드는 크기가 고정된 것이 아니라 가변적
  • 옵션을 모두 사용했을 때 옵션 필드의 최대 길이는 40byte다.(->총 20byte+40byte=60byte)
  • Data offset필드가 옵션 필드의 끝을 가리키는데, 실제 옵션 필드의 끝 < Data offset라면 부족한 부분만큼 0으로 채워야함
  • 대표적인 옵션으로는 윈도우 사이즈의 확장을 위한 WSCALE, Selective Repeat 방식을 사용하기 위한 SACK 등이 있음
  • 약 30개 정도의 옵션을 사용할 수 있음


TCP 연결 방식 (3-Way Handshaking)

TCP는 장치들 사이에 논리적인 접속성립(establish)하기 위하여 3-Way Handshaking를 사용한다.
 
3-Way Handshake의 역할은 양쪽 모두 데이터를 전송할 준비가 되었다는 것을 보장하는 것이다.
 

출처:https://user-images.githubusercontent.com/40616436/81503765-6e7ace80-9320-11ea-82d6-49e00e900c36.png

 
 
1. SYN 패킷 전송 (클라이언트 → 서버)

  • 클라이언트는 서버에 접속을 요청하기 위해 SYN(Synchronize Sequence Numbers) 패킷을 보낸다.
  • 이때 클라이언트는 SYN_SENT 상태가 되며, 서버의 응답을 기다린다.

2. SYN/ACK 패킷 전송 (서버 → 클라이언트)

  • 서버는 클라이언트의 SYN 요청을 받고, 이를 수락한다는 의미로 SYN과 ACK(Acknowledgment) 플래그가 설정된 패킷을 클라이언트에게 보낸다.
  • 이때 서버는 SYN_RECEIVED 상태가 된다.

3. ACK 패킷 전송 (클라이언트 → 서버)

  • 클라이언트는 서버의 SYN/ACK 패킷을 받고, 이를 확인했다는 의미로 ACK 패킷을 서버에 보낸다.
  • 이때 연결이 성립되며, 서버는 ESTABLISHED 상태가 된다.
  • 이제 클라이언트와 서버는 데이터를 주고받을 수 있다.



TCP 연결 해제 방식 (4-Way Handshaking)

반대로 TCP 연결을 종료하는 과정은 4-Way Handshake로 이루어진다.

출처:https://user-images.githubusercontent.com/40616436/81503940-7a1ac500-9321-11ea-9442-d1b86065188c.png

 

1. 클라이언트 → 서버: FIN 패킷 전송

  • 클라이언트는 연결을 종료하고자 할 때 FIN(Finish) 플래그가 설정된 패킷을 서버에 보낸다.
  • 이때 클라이언트는 연결 종료를 대기하는 상태가 된다.

2. 서버 → 클라이언트: ACK 패킷 전송

  • 서버는 클라이언트의 FIN 패킷을 받고, 이를 정상적으로 받았다는 의미로 ACK(Acknowledgment) 패킷을 클라이언트에 보낸다.
  • 서버는 CLOSE-WAIT 상태가 된다.

3. 서버 → 클라이언트: FIN 패킷 전송

  • 서버는 연결을 종료한 후, 클라이언트에게 FIN 플래그가 설정된 패킷을 보낸다.

4. 클라이언트 → 서버: ACK 패킷 전송

  • 클라이언트는 서버의 FIN 패킷을 받고, 이를 확인했다는 의미로 ACK 패킷을 서버에 보낸다.
  • 클라이언트는 일정 시간 동안 TIME-WAIT 상태가 되어 서버의 재전송 패킷을 기다린다.

5. 서버: 세션 종료

  • 서버는 클라이언트로부터 ACK 패킷을 받은 후 소켓을 닫고, 두 TCP 간의 세션이 종료된다.

6. 클라이언트: TIME-WAIT 상태

  • TIME-WAIT 상태에 있는 클라이언트는 일정 시간 동안 세션을 유지하며 도착하지 않은 패킷을 기다린다.
  • 서버에서 FIN을 전송하기 전에 전송한 패킷이 늦게 도착할 경우, 클라이언트는 서버로부터 FIN을 수신한 후에도 일정 시간 동안(기본 240초) 세션을 유지하며 잉여 패킷을 기다리는 TIME-WAIT 상태에 머물러 데이터 유실을 방지한다.
  • 일정 시간이 지나면 클라이언트도 소켓을 닫고 세션을 완전히 종료한다.



TCP 재전송과 타임아웃

클라이언트는 일정 시간 내에 서버의 확인 응답(ACK)을 받지 못하면 패킷을 재전송하여 데이터 유실을 방지한다.

사진출처:https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbgJLtD%2FbtsFpQExe1R%2Fr9NSFCoPKvvSqgJ8GvMb30%2Fimg.png


재전송: 데이터 전송 후 응답 패킷 미수신 시 재전송.
타임아웃 (RTO): 응답 패킷 대기 시간. 너무 짧으면 재전송, 너무 길면 속도 저하.

  1. 패킷 전송 및 확인: 클라이언트가 서버로 데이터 패킷을 전송하고, 서버는 이를 확인(ACK)하는 응답 패킷을 보낸다.
  2. 타이머 시작: 클라이언트는 패킷을 전송한 후 타이머를 시작한다. 일정 시간 내에 서버로부터 확인 응답(ACK)을 받지 못하면 타이머가 만료된다.
  3. 패킷 유실 감지 및 재전송: 클라이언트가 타이머 만료를 감지하면 해당 패킷이 유실된 것으로 간주하고 동일한 패킷을 다시 전송한다.
  4. 서버의 응답: 서버는 재전송된 패킷을 수신하고, 이를 확인하는 응답(ACK)을 다시 클라이언트에게 보낸다.
  5. 타이머 초기화 및 재시작: 클라이언트는 서버로부터 응답을 받으면 타이머를 초기화하고 다시 시작한다. 이는 다음 패킷에 대해 동일한 과정을 반복한다.

 

UDP의 특징 및 구조

 
데이터를 데이터그램(독립적인 관계를 지니는 패킷) 단위로 처리하는 프로토콜(논리x)

출처:https://user-images.githubusercontent.com/54384004/73796004-6c6c1580-47ef-11ea-97e0-392e36728fcc.png

 

 

+위 표 정보 외 추가 정보
*흐름제어(flow control), 오류제어, 손상된 세크먼드의 수신에 대한 재전송 X
*포트들을 사용하여 IP 프로토콜에 인터페이스를 제공하는 역할을 수행한다.
*요청 또는 응답이 손실된다면 재전송 없이 단지 타임아웃 처리되고, 다시 시도하면 된다.
*코드가 간단하고 초기설정이 TCP와 비교하여 적은 메시지를 요구한다.
*연결 자체가 없어 소켓 구분이 없고, 소켓 대신 IP를 기반으로 데이터를 전송한다.
 

UDP 헤더 구조

UDP는 단순한 데이터 전송을 위해 설계되어 헤더가 간단하다.

출처:https://velog.velcdn.com/images/amercurl27/post/a9e380ac-cc47-45b2-a828-d9538cadaa8b/image.png

 

UDP 헤더의 크기

  • 8bytes

발신지 포트와 목적지 포트 (16비트): 송수신 측의 포트 번호.

길이 (16비트): 헤더와 데이터의 총 길이.

체크섬 (16비트, 선택적): 오류 검출. TCP와 달리 필수는 아님.

  • 체크섬은 데이터 전송 중 발생할 수 있는 오류를 검출하기 위해 사용되지만 TCP와 달리 UDP는 오류 복구 기능을 제공하지 않아 오류 검출 후의 처리는 응용 프로그램에서 담당해야 한다.


UDP 통신 방식

출처:https://media.geeksforgeeks.org/wp-content/uploads/20230406112559/TCP-3.png

 

  • 수신자의 수신 여부 확인 없이 데이터 전송.
  • 빠른 데이터 전송이 필요할 때 유용.
  • 브로드캐스트 및 멀티캐스트 지원.


결론(TCP와 UDP의 용도)

  • TCP는 신뢰성이 중요한 웹 페이지 로드, 이메일 전송, 파일 전송 등의 애플리케이션에 적합하다.
  • UDP는 실시간 스트리밍, 온라인 게임, VoIP 등 빠른 데이터 전송이 중요한 애플리케이션에 적합하다.

출처:https://photo.coolenjoy.co.kr/data/editor/1705/20170503123926_iqwmwzqy.jpg/https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcStJOZJ8I6GWv1kqOJVgJL7EsLYfLmiL-Vxbu7BpPrurPsUHXvE

 

 *PPT

[4주차]TCP와 UDP의 특징 및 차이점.pptx
3.09MB

*참고자료

https://bellog.tistory.com/235
https://ohcodingdiary.tistory.com/7
https://ohcodingdiary.tistory.com/12
https://evan-moon.github.io/2019/11/10/header-of-tcp/
https://github.com/yeoseon/tip-archive/issues/90

 

'Security > Network' 카테고리의 다른 글

Firewall, DDoS, IDS 와 IPS 의 특징 및 차이점  (0) 2024.08.24
계층별 주요 프로토콜(2)  (0) 2024.08.12
계층별 주요 프로토콜(1)  (0) 2024.08.10
OSI 계층 별 장비  (2) 2024.07.23
OSI 7 Layer  (1) 2024.07.16

네트워크 개요

네트워크 정의

컴퓨터나 기타 기기들이 리소스를 공유하거나 데이터를 주고받기 위해 유선 혹은 무선으로 연결된 통신 체계

 

네트워크의 주요 기능

어플리케이션 목적에 맞는 통신 방법 제공

  *어플리케이션: 컴퓨터와 사용자 간의 상호 작용을 통해 특정 작업을 수행하는 소프트웨어 프로그램

신뢰할 수 있는 데이터 전송 방법 제공
네트워크 간의 최적의 통신 경로 결정
목적지로 데이터 전송
노드 사이의 데이터 전송

 

 

위와 같이 통신 기능이 제대로 동작하기 위해서는 참여자들 사이에서 약속된 통신 방법이 필요하다.

네트워크 프로토콜: 네트워크 통신을 하기 위해 통신에 참여하는 주체들이 따라야 하는 형식, 절차, 규약

단 하나의 프로토콜로 표현하기 힘들어 모듈화를 시켜 계층 구조를 만듦

OSI 7계층(7계층): 범용적인 네트워크 구조 (이론적)
TCP/IP 스택(4계층): 인터넷에 특화된 네트워크 구조 (실용적)

 

OSI 7 Layer & TCP/IP 4 Layer

 

OSI 7 Layer?

OSI 7 계층 모델은 1984년 국제표준화기구(ISO, International Organization for Standardization)에서 네트워크 통신의 표준화를 위해 제안한 모델
다양한 네트워크 장비와 프로토콜들이 상호 운용 가능하도록 하기 위한 표준 모델을 만듦
네트워크 아키텍처의 표준화를 통해 다양한 네트워크 기술 및 제품 간의 상호 운영성을 보장
 
OSI 7 Layer가 만들어진 궁극적인 목적
1. 표준화를 통한 서로 다른 회사와 통신하기가 편해져 비용 절감
2. 세분화를 통한 신속한 장애문제 해결 및 교육적인 효과 상승
 
특징
7개로 이루어진 계층은 각각 독립적인 모듈로 구성
각 계층은 상하 계급 구조를 가짐
상위 계층의 프로토콜이 동작하기 위해서는 하위의 모든 계층에 문제가 없어야 한다.

 

응용 계층(L7)

기능: 사용자와 직접 상호작용하는 응용 프로그램을 지원한다.
역할: 이메일, 웹 브라우저 등 사용자와 상호작용하는 응용 프로그램에서 데이터를 주고받는다.

 

전송 단위: 데이터, 메세지
예시: HTTP, FTP, SMTP, DNS(웹페이지가 보고 싶을 때 HTTP 통신,파일을 서버에 다운 및 업로드 FTP,도메인을 ip주소로 바꾸고 싶으면 DNS,이메일을 사용하고 싶으면 SMTP)

 

표현 계층(L6)

기능: 7계층에서 만들어진 데이터를 확장자를 부여하여 표현해주는 계층. 데이터를 다른 형식으로 변환하고, 암호화/복호화하여 데이터의 보안을 유지(메시지 포맷 관리)

 

역할: 데이터 형식 변환, 압축, 암호화 등을 통해 데이터를 상호 호환 가능한 형태로 만듦
전송 단위: 데이터, 메세지
예시: 텍스트 파일을 ASCII로 변환, 데이터 압축/암호화, ppt->pptx

 

세션 계층(L5)

기능: 응용 프로그램 간의 세션을 설정하고 관리한다.
역할: 세션을 시작, 유지, 종료하며, 데이터 교환을 위한 동기화를 제공한다.
전송 단위: 데이터, 메시지
예시: 로그인을 통해 로그인 상태로 세션을 설정하고, 데이터 통신을 관리한다.
 

*세션: 물리적 연결(케이블)IP(논리주소), MAC주소(물리주소)등 논리적인 연결을 통해 통신/프로세스들 사이에 통신을 수행하기 위해서 메세지 교환을 통해 서로를 인식 한 이후부터 통신을 마칠 때까지의 기간

*동기화: 동기점을 설정해서 송수신 중 오류가 발생하면 동기화 이후부터 다시 재전송한다.

 

넘어가기에 앞서...

7~5계층은 데이터를 송수신하는 양쪽 종점 컴퓨터 내의 프로세스들 간의 통신 프로토콜이라 할 수 있다.
전송단위가 데이터, 메세지인 이유는 이 계층들이 주로 애플리케이션과 사용자 간의 데이터 교환을 처리하기 때문에
 
4~1계층의 주된 기능은 데이터를 전달하는 것(+양쪽 외에 있는 노드들도)
네트워크 경로 설정+물리적 연결

 

전송 계층(L4)

기능: 데이터를 신뢰성 있게 전송하며, 전송 속도 조절과 오류 제어를 담당한다.
역할: 데이터의 송수신을 관리하고, 신뢰성 있는 연결(TCP)과 빠른 전송(UDP)을 제공한다.
전송 단위: TCP-세그먼트, UDP-데이터그램

 

장비: L4 스위치
예시: TCP(신뢰성, 연결지향적), UDP(비신뢰성, 비연결성, 실시간)

 

네트워크 계층(L3)

기능: 데이터를 여러 경로를 거쳐 목적지까지 전달한다.
역할: 데이터를 목적지까지 최적의 경로로 전달하며, 라우팅을(데이터가 표적에 도달하기 위한 최상의 물리적 경로를 찾는 과정) 통해 경로를 설정한다.

 

전송 단위: 패킷
장비: 라우터
예시: IP 주소

 

데이터 링크 계층(L2)

기능: 데이터가 만들어지는 단계. 이웃한 기기 간의 데이터 전송을 담당하며, 물리 계층에서 발생할 수 있는 오류를 수정한다.
역할: 프레임 단위로 데이터를 주고받으며, 프레임에 물리적 주소(mac주소)를 부여하고  흐름 제어, 오류 제어, 접근 제어, 동기화 등을 수행한다.
전송 단위 : 프레임
장비: 스위치, 브리지
예시: Ethernet

*MAC주소: 컴퓨터 간 데이터를 전송하기 위한 컴퓨터의 물리적 주소

*MAC 주소는 장치의 각 네트워크 인터페이스에 할당된 고유 식별자. IP 주소는 컴퓨터 네트워크에 연결된 장치에 할당된 숫자 식별자

*MAC 주소 기반 통신(ARP:ip->mac주소로 변환)

 

물리 계층(L1)

기능: 데이터를 전기적 신호로 변환하여 전송한다.
역할: 컴퓨터가 01의 신호를 아날로그 신호로 변환하여 물리적 장비로 전송하고, 이를 다시 01의 디지털 신호로 해석하는 역할을 한다.
전송 단위:Bits 단위
미디어 타입: 구리, 광섬유, 공기(무선)
장비: 허브, 리피터, 통신 케이블

 

데이터 캡슐화와 역캡슐화

캡슐화: 데이터를 보내기 전에 각 계층을 거치면서 필요한 정보를 덧붙이는 과정. 예를 들어, 소포를 포장하는 것처럼 각 계층에서 헤더와 푸터를 추가하여 데이터를 전송한다.
역캡슐화: 데이터를 받을 때 각 계층에서 헤더와 푸터를 제거하고 원래의 데이터를 복원하는 과정.

 

네트워크 통신의 전체 흐름

EX.이메일을 보내는 과정

1. 응용 계층 (Application Layer): 작성된 이메일이 응용 계층에서 표현 계층으로 전달
2. 표현 계층 (Presentation Layer): 데이터 형식 변환, 압축, 암호화가 이루어지며, 세션 계층으로 전달
3. 세션 계층 (Session Layer): 동기화를 위해 주기적으로 동기점을 삽입하여 전송 계층으로 전달
4. 전송 계층 (Transport Layer): 발신지와 목적지를 정하고, 오류 제어 및 흐름 제어를 수행
5. 네트워크 계층 (Network Layer): 라우팅 정보를 삽입하고, 패킷으로 나누어 데이터 링크 계층으로 전달
6. 데이터 링크 계층 (Data Link Layer): 프레임 단위로 나누고, MAC 주소를 지정하여 물리 계층으로 전달
7. 물리 계층 (Physical Layer): 데이터를 전기적 신호로 변환하여 전송

이와 같은 과정을 통해 데이터가 목적지에 도달하고, 역캡슐화를 거쳐 원래의 데이터를 복원하게 된다.

 

사진출처:

네트워크 https://hasonss.com/blogs/wp-content/uploads/2023/11/network-infrastructure-2.webp

7layer :https://user-images.githubusercontent.com/58318041/91638346-eee94a80-ea49-11ea-9bd0-3d0b83b4bf39.png

프로토콜:https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcNrGiv%2FbtrdBrRV3qd%2FToDNFMLQzXtGTf71KoNL3K%2Fimg.png

응용:https://velog.velcdn.com/images/hoon0123/post/d771eac1-91e2-4551-99bf-809418de73f9/image.png

표현:https://velog.velcdn.com/images/hoon0123/post/1ecb056d-808e-4c03-ac84-42177ad55b15/image.png

셋션:https://velog.velcdn.com/images/hoon0123/post/2c1ae433-0a2b-48f8-895e-ced6efa90d0a/image.png

전송:https://velog.velcdn.com/images/hoon0123/post/d6a4a130-9c30-4abf-85e5-090ae9257c93/image.png

네트워크:https://velog.velcdn.com/images/hoon0123/post/e2fb2722-80d8-44ce-9f90-843075c45606/image.png

데이터링그:https://velog.velcdn.com/images/hoon0123/post/d0db8a1a-a4e2-4fee-9fc3-27d745bea47e/image.png

물리:https://velog.velcdn.com/images/hoon0123/post/b88909ef-0418-47cd-9fcf-a2ee7b0b4b56/image.png

캡슐화.:https://huimang2.github.io/assets/images/osi7/osi_img_01.png//// https://t2.daumcdn.net/thumb/R720x0.fpng/?fname=http://t1.daumcdn.net/brunch/service/user/7zsI/image/lUkm-Pl6f63OC9Dgt14QumjxnrQ.png

 

*PPT

[3주차]OSI 7 Layer.pptx
2.78MB

 

'Security > Network' 카테고리의 다른 글

Firewall, DDoS, IDS 와 IPS 의 특징 및 차이점  (0) 2024.08.24
계층별 주요 프로토콜(2)  (0) 2024.08.12
계층별 주요 프로토콜(1)  (0) 2024.08.10
OSI 계층 별 장비  (2) 2024.07.23
TCP와 UDP의 특징 및 차이점  (0) 2024.07.16

+ Recent posts