Backend 88

인터넷 제어 메시지 프로토콜, ICMP.

ICMP (Internet Control Message Protocol): 인터넷 제어 메시지 프로토콜 ICMP는 IP layer의 한 부분으로 에러나 주의가 요구되는 상태 등을 전송하는 역할을 하며. ICMP 메시지는 IP 계층이나 그보다 높은 계층(TCP, UDP 등)에 의해 호출된다. ICMP 메시지는 다음 그림처럼 IP 데이터그램 안에 포함되어 전송된다. (메시지는 TCP/UDP 계층에서 처리) IP Datagram IP Header (20 Bytes) ICMP Message ICMP는 RFC 792번에 정의되어 있다. 다음은 ICMP메시지의 구조를 그림으로 나타낸 것이다. Type (8 - bit) Code (8 - bit) Checksum (16 - bit) 이 세 필드 뒤에는 타입과 코드에 ..

Backend/Network 2011.05.13

OSI 7 Layer

네트워크 강의 들을때 가장 처음으로 배우는것. 보안 강의 들을때 가장 처음으로 배우는것. TCP/IP 책 볼때 가장 첫장에 나오는 것. 사실 공부할땐 그리 와닿진 않지만 일하면서, 실무를 접하다 보니 아~하! 하고 와닿는 내용들이다. 그냥 개념적으로만 알고있으면 되는 내용들. 물론 외울 필요 없고 원리만 파악하면 된당. ㅎㅎㅎ 나도 아직 이름을 외우진 못했음. 하지만 네트워크를 공부하는 사람이라면 적어도 프로토콜별 계층 분류는 할 줄 알아야 할듯.. Application (어플리케이션 계층) 일반적인 응용 서비스를 실행한다. 예로 HTTP, SMTP, TELNET, FTP 등을 들 수 있다. Presentation (프레젠테이션 계층) 송수신측의 데이터 번역을 담당한다. 이는 어플리케이션 계층에서 하는 ..

Backend/Network 2011.05.13

실시간 전송 프로토콜, RTP.

RTP(Realtime Transport Protocol), 실시간 전송 프로토콜 -네트워크에서 음성, 비디오 등 실시간 데이터를 전송하기 위해 만들어진 프로토콜, RFC 1889, 1890에 기술됨 -UDP/IP 기반의 프로토콜 (데이터가 유실된다고 하더라도 실시간 전송중인 데이터를 다시 재전송하지는 않기 때문에) -UDP정보와 함께 코덱 정보, 생성된 시간 등에 대한 정보를 같이 발송 -디폴트 포트로 5004번을 사용 -패킷의 내용은 다음과 같다 V (버전) P (패딩) X (extension) CC (CSRC Count) M (Marker) PT (Payload Type) Sequence Number Timestamp SSRC(Synchronization Source) Identifier V : 버..

Backend/Network 2011.05.13

SRTP

SRTP(Secure Real-time Transport Protocol) SRTP는 RTP의 보안 모드라고 할 수 있다. 실시간으로 전송되는 멀티미디어 데이터를 암호화하여 송,수신하는 프로토콜을 의미한다. 실시간 데이터를 암호화 또는 복호화 하기 위해 SRTP에서는 기본적으로 AES알고리즘을 사용한다. 헤더는 다음과 같이 구성되어 있다. V : 버전 P : 패딩 X : Extension CC : CSRC Count M : Marker PT : 페이로드 형식 (타입) Payload 항목까지는 RTP와 동일하며, SRTP MKI, Authentication Tag 항목이 추가되었다. 이 때 Payload는 물론 암호화 되어 있어서, Payload 길이의 계산 방식은 RTP 패킷과 다르다. Payload 고..

Backend/Network 2011.05.13

FEC

FEC (Forward Error Correction) RFC 5109에 정의되어 있는 페이로드 포멧의 일종으로 RTP, SRTP에서 사용된다. 음성 데이터(전화)는 통화 품질이 중요하다. 통화 중 음성이 버벅대고 끊긴다면 이는 심각한 문제가 아닐 수 없다. 그렇다고 잃어버린 패킷을 재전송하자면 실시간 데이터의 의미가 없어지게 된다. 이를 모두 고려하여 사용되는 방법이 바로 FEC이다. FEC는 네트워크상의 데이터 패킷의 손실을 빨리 복구하기 위해 고안되었다. 쉽게 설명해 보겟다. 다음과 같이 패킷이 지나가고 있는데 RTP2번 패킷이 손실되면, FEC1번 패킷(RTP 1, 2의 정보를 가지고 있는 RTP 패킷이다.)의내용을 바탕으로 RTP2번 패킷을 재구성하게 되는 것이다. FEC는 RTP를 사용하며, ..

Backend/Network 2011.05.13

SRTCP

SRTCP (Secure Realtime Transport Control Protocol) RTCP 가 RTP 패킷을 제어하듯이, SRTCP 는 SRTP를 제어하는 역할을 한다. (SRTP 패킷 확인하기) RTCP 패킷과 역할이 비슷한데, 거기에 보안 기능 (암호화, 메시지 인증 및 무결성 검사) 이 추가되어 있다고 보면 쉽다. SRTCP 패킷에는 SRTP처럼 MKI 와 Authentication Tag 필드가 붙어있는데, 그밖에 E-tag 및 SRTCP Index 필드도 포함되어 있다. SRTCP의 Payload 부분이 암호화 되어서 전송되는 것이 특징이다. 여기서 암호화 및 인증 기능은 Optional 이다. 꼭 사용해야 되는 것은 아니고 필요에 따라 사용할 수도, 사용하지 않을 수도 있다는 의미이다..

Backend/Network 2011.05.13

SDP - SRTP 원리

일하다가 정리가 필요할 것 같아 급 포스팅. SIP 기반의 VoIP 통신에서 SRTP를 이용할 때, INVITE의 SDP - INVITE에 대한 200 OK의 SDP 를 통해 네고가 성립된다. INVITE메시지의 밑단에는 다른 요청들과는 달리 "SDP"라는 내용이 딸려있다. 그중에서 유심히 봐야할 부분은 media field , attribute field 요 두녀석이다. 다음 내용은 Invite / 200 OK 의 Offer - Answer model에서 SDP만 따온 거다. (위에껀 INVITE, 아래껀 200OK) c=IN IP4 10.0.0.22 m=audio 51372 RTP/SAVP 31 a=crypto:1 AES_CM_128_HMAC_SHA1_80 Inline:d0RmdmcmVCspeEc3Q..

Backend/Network 2011.05.13

TLS Protocol (SSL)

TLS 사용 목적 - 암호 보안 : 두 통신단 사이에 안전한 연결을 설정하기 위해 사용한다 - 상호호환성 : 개발자들은 상대방의 암호 코드를 모르는 상태에서 응용 프로그램을 개발할 수 있다. - 확장성 : 새로운 공개키 암호화 방식과 블록 암호화 방식을 위한 프레임 워크를 제공한다. - 효율성 : TLS 프로토콜은 생성되는 연결의 수를 줄이기 위해 세션 캐쉬 스킴을 채용했다. TLS Record Protocol - TLS Record Protocol은 계층적 프로토콜로써, 각각의 계층에서 메시지는 길이, 설명, 내용을 위한 필드를 가질 수 있다. - Record Protocol은 메시지를 전송하고, 데이터를 블록으로 나눈다. - 경우에 따라서는 데이터를 압축하며, MAC을 제공해서 암호화 하고 그 결과를..

Backend/Network 2011.05.12
반응형