네트워크

    SSL & TLS 및 암호화 방식

    SSL & TLS 및 암호화 방식

    작년부터 올해 초까지 Secure Connection과 Certificate Authentication을 통한 통신 기능에 대해 구현해야 했었는데, 당시 SSL에 대해 어렴풋이 알고 있었지만, 실제로 해당 내용을 다뤄보니 꽤나 헷갈리고, 어려운 내용이었습니다. 해당 기능을 마무리 하면서 알게된 내용들을 블로그에 정리해 보려고 합니다. SSL (Secure Socket Layer) 및 TLS(Transport Layer Security) 먼저, SSL과 TLS에 대해 알아야 합니다. SSL은 TCP/IP 4 Layer 중 전송계층(Transport)상에서 클라이언트와 서버에 대한 인증 및 데이터 암호화를 수행합니다. 응용계층에서부터 TCP 전송계층 사이에서 안전한 채널을 형성해 주는 보안용 프로토콜입니다...

    11. 라우터 (ROUTER)

    11. 라우터 (ROUTER)

    라우터(Router) 서로 다른 네트워크간 통신하기 위해서, 브로드캐스트 영역을 나눠주기 위해서 사용한다. 한마디로 ‘지능을 가진 경로배정기’라고 말할 수 있다. 예를 들어, 외부의 어떤 인터넷 사이트를 찾아가는 데이터가 있다면 라우터는 이 데이터를 목적지까지 가장 빠르고 효율적인 길을 스스로 찾아 안내해 주는 능력을 가지고 있다. 라우터의 2가지 역할 1. 경로 설정(Path Determination) : 데이터 패킷이 목적지까지 갈 수 있는 길을 검사하고 어떤 길로 가는 것이 가장 적절한지를 결정함. 2. 스위칭(Switching) : 그 길이 결정되면 그쪽으로 데이터 패킷을 스위칭 해줌. 라우터는 가장 좋은 길을 찾기 위해서 라우팅 알고리즘, 즉 라우팅 프로토콜이 사용된다. 라우팅 테이블이란 것도 ..

    10. VLAN(Virtual LAN)

    10. VLAN(Virtual LAN)

    VLAN : 한 대의 스위치를 마치 여러 대의 분리된 스위치처럼 사용하고, 또 여러 개의 네트워크 정보를 하나의 포트를 통해 전송할 수 있다. 하나의 스위치에 연결된 장비들도 브로드 캐스트 도메인이 서로 다를 수 있음. VLAN 적용 전 VLAN 적용 후 회사의 3개의 네트워크가 존재 한다면, 라우터에서는 3개의 이더넷 인터페이스가 나와야 하고, 서로 다른 스위치에 연결되어야 한다. 본관이 아닌 별관의 네트워크를 구성한다면, 별관에 스위치를 따로 설치하고 같은 네트워크에 속한 스위치끼리 연결해 주어야 한다. 하지만 VLAN을 사용한다면, 스위치로 하나의 링크만을 이용해서도, 3개의 네트워크 정보를 실어 보낼 수 있다. 스위치도 여러 개의 브로드 캐스트 영역을 나누어 줄 수 있게 된다. VLAN은 스위치에..

    9. 스패닝 트리 알고리즘 (STP)

    스패닝 트리 프로토콜 네트워크당 하나의 Root Bridge를 갖는다. Non root Bridge는 무조건 하나 씩의 Root port(Root와 연결된 링크의 포트)를 갖는다. Segment(브리지 또는 스위치 간에 서로 연결된 링크)당 하나씩의 지정포트(Designated port)를 갖는다. 다음 단계로 순서를 정함 1. 누가 더 작은 Root Bridge ID를 가졌는가? 2. Root Bridge까지의 Path Cost 값은 누가 더 작은가? 3. 누구의 BID(Sender BID)가 낮은가? 4. 누구의 포트 ID가 더 낮은가? 스패닝 트리 정보를 자기들끼리 주고받기 위해 BPDU(Bridge Protocol Data Unit) 프레임을 사용. Root BID, Root Path Cost, ..

    7. IP주소(IP Address)

    7. IP주소(IP Address)

    TCP 프로토콜을 사용하기 위해 모든 장비들을 구분해주기 위해서 만들어 낸 것이 IP Address. IP Address는 32bit에 2진수로 이루어져 있다. ▶ 네트워크 부분(Network Part) : 하나의 PC가 데이터를 뿌렸을 때, 그 데이터를 라우터를 거치지 않고도 받을 수 있는 영역. 브로드 캐스트 영역이라고 생각하면 된다. ▶ 호스트 부분(Host Part) : 각각의 PC 또는 장비를 일컫는다. 한 네트워크(브로드캐스트 영역)에서는 네트워크 부분은 같고, 호스트 부분은 달라야 정상적인 통신이 가능하다. Ex) 한 PC방에서 쓰는 IP주소가 203.240.100.1 ~ 203.240.100.255 이면 네트워크 부분은 203.240.100 이고, 호스트 부분은 1~255이다. IP에는 5..

    5. 네트워크 장비 - 랜카드

    5. 네트워크 장비 - 랜카드

    NIC(Network Interface Card) 보통 랜카드로 불리며 주변에서 가장 많이 볼 수 있는 네트워크 장비이다. 유저의 데이터를 케이블에 실어서 허브나 스위치, 혹은 라우터 등으로 전달해주고 자신에게 온 데이터를 CPU에게 전달해주는 역할을 한다. 과거에는 IRQ(interrupt Request) 넘버의 세팅이나 BaseMemory 등의 세팅이 필요했다. 데이터가 들어오면 랜카드는 컴퓨터의 CPU에 자기가 가지고 있던 IRQ를 이용해서 인터럽트를 걸게 된다. CPU에서는 하던 일을 멈추고 IRQ를 확인해서 랜카드에서 일을 해줄 것을 요청받는다. 그럼 랜카드는 BaseMemory 쪽으로 데이터를 보내서 작업을 시작한다. 요즘에는 IRQ를 자동으로 지정해 주지만, 예전에는 안 쓰는 IRQ를 찾아 ..

    4. Protocol (프로토콜) - TCP & UDP

    4. Protocol (프로토콜) - TCP & UDP

    Protocol (프로토콜) 컴퓨터끼리 서로 통신하기 위해서 꼭 필요한 서로 간의 통신 규약 또는 통신 방식에 대한 약속이다. 두 사람이 서로 대화를 한다고 가정하면, 같은 언어를 사용해야만 대화가 가능하다고 생각하면 쉽다. TCP TCP(Transfer Control Protocol)는 트랜스포트 층에 해당하며, 신뢰성 있는 바이트 스트림 서비스를 제공한다. 바이트 스트림 서비스란 용량이 큰 데이터를 보내기 쉽게 TCP 세그먼트라고 불리는 단위 패킷으로 작게 분해하여 관리하는 것을 말하고, 신뢰성 있는 서비스는 상대방에게 보내는 서비스를 의미한다. TCP/IP는 패킷 통신 방식의 인터넷 프로토콜인 IP(Internet Protocol)와 전송조절 프로토콜인 TCP(Transmission Control ..

    3. OSI 7 Layer (OSI 7 계층)

    3. OSI 7 Layer (OSI 7 계층)

    OSI 7 Layer (Open Systems Interconnection 7 Layer) 통신에 관한 국제적인 표준기구인 International Organization for Stanardization(ISO)라는 곳에서 만든 OSI 7 Layer는 통신이 일어나는 과정을 7개의 단계로 나누었다. 이는 통신을 단계별로 표준화하여 그 효율성을 높이기 위해서 사용되었다. 첫째, 데이터 흐름이 한눈에 보인다. -> 우리가 사용하는 애플리케이션 계층부터 맨 마지막 피지컬 계층까지를 나누어 놓으니까 어떻게 데이터가 날아가는지 보기 쉽다. 둘째, 네트워크에서 문제가 발생하면, 해결하기가 편리하다. -> 7개의 작은 문제로 나눈 후 그 문제를 해결하는 것이 훨씬 쉽다. 예를 들어 이메일이 안 보내 지는 경우 pi..