Computer Science/Network
-
HTTPS는 어떻게 신뢰성있는 통신을 보장할까❓Computer Science/Network 2022. 11. 12. 22:18
더보기 약 1년만에 고향 티스토리로 돌아와 글을 쓰는 감회가 새롭다 현재 HTTP 완벽 가이드 책으로 스터디를 진행중인데, 14장 보안 HTTP 단원 발표 준비를 하며 당연하게만 쓰고있었던 HTTPS를 제대로 이해보고자 한다 https://2jinishappy.tistory.com/338 대칭 키/공개 키/단방향 암호화 알고리즘(정의와 예시) 암호화 알고리즘은 암호화/복호화에 사용되는 키, 그리고 양방향 가능 유무를 기준으로 분류할 수 있다. Symmetric-Key Algorithm 대칭 키 알고리즘 대칭 키 암호는 암호화 알고리즘의 한 종류로, 암호 2jinishappy.tistory.com 이전에 대칭키, 공개키 암호화 알고리즘에 관한 글을 작성한 적이 있었다. 대칭키 공개키가 어떤건지는 알겠는데,..
-
NAT와 포트포워딩 - 패킷의 IP와 Port 번호 변환하기Computer Science/Network 2021. 11. 1. 22:23
NAT : Network Address Translation IP 패킷의 TCP/UDP Port Number와 출발지(Source), 목적지(Destination) IP 주소를 재기록 하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술 위의 그림처럼 Host - Router - Server를 거치는 과정에서 패킷은 많은 네트워크 단말을 거치게 되는데, 그 과정에서 출발지의 (IP, Port Num)과 도착지의 (IP, Port Num)과 같은 데이터는 계속해서 변할 수 있다. 패킷에 변화가 생기기 때문에 IP나 TCP/UDP의 체크섬도 다시 계산해서 재기록해야 한다. IPv4를 사용할 때 가능한 최대 IP 개수는 255^4 = 4,228,250,625(약 40억)로 한정되어 있기 때문에, 제한된 수의..
-
[Network] ARP 프로토콜Computer Science/Network 2021. 8. 2. 09:13
ARP 프로토콜(Address Resolution Protocol): IP주소를 이용해서 같은 네트워크 대역에서 통신하기 위해 필요한 MAC 주소를 알아내는 프로토콜 같은 네트워크 대역에서 통신을 하더라도 데이터를 보내기 위해서는 7계층부터 캡슐화를 통해 데이터를 보내기 때문에 IP주소와 MAC주소가 모두 필요하다. 이 때, IP주소는 알고 MAC주소는 모르더라도 ARP 프로토콜을 통해 통신이 가능하다. ARP 프로토콜 구조 Hardware type : 2계층에서 사용하는 프로토콜 타입 Protocol Type : IPv4 Hard Add Len : 06 Proto Add Len : 04 Opcode : 어떤 동작을 하는지 나타내는 코드(1 - 요청, 2 - 응답) source hardware addre..
-
[Network] 네트워크를 설명하는 두 가지 모델 - TCP/IP, OSI 7계층Computer Science/Network 2021. 7. 17. 13:57
OSI 7계층 - 네트워크 통신을 체계적으로 다루는 ISO에서 표준으로 지정한 모델. 데이터를 주고받을 때 데이터 자체의 흐름을 각 구간별로 나눠 놓은 것 TCP/IP 모델 - HTTP, TCP/UDP, IP, ICMP, ARP, Ethernet 등 각종 프로토콜을 중심으로 Layer를 4계층으로 단순화시킨 모델 공통점 계층적 네트워크 모델 계층간 역할 정의 차이점 OSI는 역할 기반, TCP/IP는 프로토콜 기반 OSI는 통신 전반에 대한 표준 TCP/IP는 데이터 전송기술 특화 + 패킷 - 네트워크 상에서 전달되는 데이터를 통칭하는 말 네트워크에서 전달하는 데이터의 형식화된 블록 제어 정보와 사용자 데이터로 이루어지며 사용자 데이터는 페이로드라고도 한다. Encapsulation - 여러 프로토콜을 ..
-
[Network] 데이터 링크 계층의 역할과 Ethernet 프로토콜Computer Science/Network 2021. 7. 15. 18:02
OSI 7계층의 2계층에는 데이터 링크 계층이 위치한다. 데이터 링크 계층 : 장치 간 신호를 전달하는 물리 계층을 이용하여 네트워크 상의 주변 장치들 간 데이터를 전송하는 계층 이 계층에서는 주로 로컬 네트워크에서 통신하는 방법에 대해 정의한다. 실질적인 네트워크 역할을 분류한 TCP/IP 네트워크 모델에서는 데이터 링크 계층과 물리 계층을 묶어 네트워크 인터페이스 모델로 설명하기도 한다. 데이터 링크 계층에서는 같은 네트워크 상(같은 LAN 대역)에 존재하는 여러 장비 중, 어떤 장비가 어떤 장비에게 데이터를 전달하는지의 역할을 수행한다. 또한 추가적으로 그 과정에서 CRC 기반의 오류 제어 및 흐름 제어를 수행한다. 다른 네트워크와 통신하기 위해서는 3계층의 주소와 프로토콜이 필요하며, 3계층을 이..
-
유/무선 공유기와 스위칭 허브의 차이Computer Science/Network 2020. 3. 6. 03:01
네트워크 통신할 때는 필수로 알아야 할 두가지 장치가 있다 iptime, anygate나 각종 통신사에서 인터넷 설치시 자주 보게 되는 유/무선 인터넷 공유기와 스위칭 허브에 대해 알아보자 라우터란, 서로 다른 네트워크 상에 패킷을 전달할 때, 최적의 경로를 찾아 전달하는 장치 이다 ! 두 디바이스에서 통신을 할 때 서로를 연결해주는 다리라고 보면 된다 보통의 가전용/오피스용 라우터도 위와 같이 하나의 WAN 포트와 4개의 LAN 포트, 전원으로 이루어져있을 것이다 🙂 유/무선 공유기는 WAN을 통해 네트워크를 할당받고, LAN포트 혹은 무선 Wifi를 통해 각각의 연결된 장치에 네트워크를 할당한다 이때 할당하는 네트워크는 IP로 구분되는 것이다 예를 들어 유/무선 공유기가 192.168.2.1이라는 게..
-
Window C 소켓 통신(Server/Client) 코드Computer Science/Network 2020. 2. 16. 17:41
Window C 환경에서 Socket을 사용해서 서버와 클라이언트가 채팅으로 통신하는 프로그램입니다 * 한 솔루션에서 멀티 프로젝트를 생성하여 실행했습니다🤭 일단 각각의 프로젝트에서 독립 실행을 위해 솔루션-속성-공용 속성-시작프로젝트에서 현재 시작영역을 체크해줍니다 또한 윈도우 환경에서 TCP/IP 소켓을 사용하기 위해 각각의 프로젝트에서 프로젝트 '속성'->'구성 속성'->'입력'->'추가 종속성'->ws2_32.lib 을 추가해줍니다!! 각각의 헤더파일과 소스코드는 다음과 같습니다 Server.h #ifndef SERVER_MAIN_H #define SERVER_MAIN_H #include #include #include #include using namespace std; #include #inc..
-
Ethernet(이더넷)통신과 CSMA/CD 방식이란?Computer Science/Network 2020. 1. 8. 13:14
이더넷은 컴퓨터 전공자가 아니더라도 한번쯤 들어봤을 용어이다 또 이더넷을 들어보지 않았더라도, 랜선이라고 불리는 이 선은 다들 한 번쯤 봤을 것이다 Ethernet : 하나의 인터넷 회선에 유/무선 통신장비 공유기, 허브 등을 통해 다수의 시스템이 랜선 및 통신포트에 연결되어 통신이 가능한 구조. 쉽게 얘기하면 네트워크를 구성하고, LAN, MAN, WAN등의 통신망에서 활용되는 기술규격을 이야기 한다. 특히 우리가 가장 가까이에서 접하는 LAN(Local Area Network)에서 사용하는 표준이다 😮 현재는 미국의 산업 표준 IEEE 802.3 규약에 의해 표준화되었다 이더넷을 통하면 네트워크에 연결된 각 기기들이 48비트 길이의 고유의 MAC 주소를 가지고, 이 주소를 이용해 상호 데이터 교환이 ..