컴퓨터공학 dhson 2016. 3. 21. 19:22
7.4 실시간 대화형 애플리케이션을 위한 프로토콜VoIP나 화상회의와 같은 실시간 대화형 애플리케이션을 위한 프로토콜(Protocols for real-time conversational applications: RTP, SIP)인 RTP, SIP에 대해서 살펴봅시다. 7.4.1 RTP 단도직입적으로 말해서 RTP라는 프로토콜은 멀티미디어 애플리케이션을 위한 프로토콜입니다. 오디오를 위한 PCM, GSM 또는 MP3, 비디오를 위한 MPEG과 H.263과 같은 일반적인 형식을 전달하는데 사용될 수 있습니다. 오늘날 RTP는 많은 상용 제품과 연구용 시작품 제작에 사용되고 있으며, 또 다른 중요한 실시간 대화형 프로토콜인 SIP도 서비스합니다. - RTP 기초 일반적으로 RTP는 UDP 상에서 실행됩니다...
더 읽기
컴퓨터공학 dhson 2016. 3. 21. 13:53
3.3비연결형 트랜스포트 : UDP 이번 절에서는 UDP가 어떻게 동작하고 무엇을 하는지 자세히 살펴봅니다.[RFC 768]에 정의된 UDP는 트랜스포트 계층 프로토콜이 할 수 있는 최소 기능으로 동작합니다. 그러니깐 UDP는 다중화/역다중화 기능과 간단한 오류 검사 기능을 제외하면 IP에 아무것도 추가하지 않는다는 말입니다. 그래서 애플리케이션 개발자가 TCP대신에 UDP를 선택한다면 애플리케이션은 거의 IP와 직접 통신하는 셈입니다. UDP는 (TCP와는 다르게) 세그먼트를 송신하기 전에 송신 트랜스포트 계층과 수신 트랜스포트 계층 사이에 핸드쉐이크(3-way handshake)를 사용하지 않는다는 점에 주의해야 합니다. 이런 이유로 UDP를 비연결형이라고 합니다. (TCP는 세그먼트를 송신하기 전에..
컴퓨터공학 dhson 2016. 3. 18. 11:31
3.2 다중화와 역다중화 이번 절에서는 트랜스포트 계층의 다중화와 역다중화를 살펴봅시다. 목적지 호스트에서의 트랜스포트 계층은 바로 아래층인 네트워크 계층으로부터 세그먼트를 수신합니다. 그리고 트랜스포트 계층은 호스트에서 동작하고 있는 애플리케이션 프로세스에게 이 세그먼트의 데이터를 전달할 의무가 있습니다. 네트워크 애플리케이션의 한 부분으로서 프로세스가 소켓(socket)을 가지고 있다는 것을 이미 알고 있을 것 입니다. 소켓은 출입문 역할을 합니다. 아래 슬라이드를 보면 알 수 있듯이 소켓은 애플리케이션 계층과 트랜스포트 계층 사이에 위치합니다. 트랜스포트 계층이 데이터를 프로세스에게 직접 전달하는 것이 아니라 소켓에게 전달합니다. 중간 매개자인 셈이죠. 그런데 이 소켓이라는 것은 반드시 1개만 있는..
컴퓨터공학 dhson 2016. 3. 17. 13:25
3.1 트랜스포트 계층 서비스 및 개요 트랜스포트 계층 프로토콜은 서로 다른 호스트에서 동작하는 애플리케이션 프로세스들 간의 논리적통신(logical communication)을 제공합니다. 논리적 통신은 애플리케이션 관점에서 보면 프로세스들이 동작되는 호스트들이 직접적으로 연결되어 있지 않음에도 마치 서로 직접 연결된 것처럼 보인다는 것을 의미합니다. 실제로 호스트는 수많은 라우터와 다양한 형태의 링크를 통해 연결되어 지구상의 서로 다른 지역에 있을 수 있습니다. 그런데 애플리케이션 프로세스는 메시지 운반에 이용되는 물리적인 하위 구조에 관심없이 그저 메시지를 송신하려고 하며 이때 바로 아래 계층인 트랜스포트 계층이 제공하는 논리적 통신을 사용합니다. 위의 슬라이드와 같이 트랜스포트 계층 프로토콜은 중..
컴퓨터공학 dhson 2016. 3. 17. 13:17
트랜스포트 계층(Transport Layer) 애플리케이션 계층과 네트워크 계층 사이에 존재하는 트랜스포트 계층은 다음과 같은 순서로 진행되겠습니다. 3.1트랜스포트 계층 서비스 및 개요3.2다중화와 역다중화3.3비연결형 트랜스포트 : UDP3.4신뢰성 있는 데이터 전송의 원리3.5연결지향형 트랜스포트 : TCP3.6혼잡제어의 원리3.7TCP 혼잡제어 3.8요약
컴퓨터공학 dhson 2016. 2. 22. 14:16
유니 캐스팅이란? TCP를 기반으로 하나의 송신자가 다른 하나의 송신자에게 데이터를 전송하는 방식을 유니 캐스팅 방식이라고 합니다. MAC 주소를 기반으로 상대측 IP주소를 목적지로 하는 일대일 통신 방식입니다. 일반적인 인터넷 응용프로그램이 모두 유니캐스팅 방식을 사용합니다. 이 방식은 목적지 주소가 아닌 다른 PC들의 CPU 성능을 저하시키지 않는 장점이 있습니다. 왜냐하면 자신의 MAC 주소가 아니라고 판단되면 랜카드가 프레임을 버리기 때문입니다. 하지만 그룹통신을 위하여 다중 수신자들에게 동일한 데이터를 전송하고자 할 경우 유니캐스팅 방식을 이용한다면 전송하고자 하는 데이터 패킷을 다수의 수신자에게 여러번 전송해야 하며, 동일한 패킷의 중복 전송으로 인해 네트워크 효율이 저하됩니다. 위 그림처럼 ..
컴퓨터공학 dhson 2016. 2. 15. 21:31
전에 포스팅한 멀티 프로세싱과 헷갈릴 수 있는 용어입니다ㅎㅎ 용어 중간에 '코어'만 들어갔을뿐 그게 그거 같죠... 차이를 알아보겠습니다. 멀티 코어 프로세서는 여러 개의 작업을 보다 효율적으로 한 번에 처리하기 위해 2개 이상의 프로세서가 붙어있는 집적회로를 말합니다. 그러니깐 '회로'를 의미합니다. 그래서 우리가 흔히 말하는 듀얼코어 프로세서가 싱글코어 프로세서보다 보다 강력한 성능을 가집니다. 프로세서가 1개에서 2개로 늘어났으니깐 성능향상도 2배일까요? 그렇지 않습니다. 약 1.5배 정도 성능향상이 있다고 합니다. 그렇다면 멀티 프로세싱은 뭐였죠? 멀티 프로세싱은 복수개의 프로세서들이 협력하여 작업을 처리하는 방식을 의미합니다. 그러니깐 '처리방식'을 의미합니다. 포인트를 아시겠나요? 멀티 코어 ..
컴퓨터공학 dhson 2016. 2. 15. 17:33
저번 하이퍼 스레딩 1편에 이은 2편입니다. 이번 글에서는 하이퍼 스레딩의 원리를 좀 더 자세히 정리하고자 합니다…..만 이미 어떤 분께서 벌써 아주 깔끔하게 정리하신 것을 찾았습니다. 그래서 그 글을 리블로그하는 것으로 대체하고자 합니다. 한번 쭈욱 읽어보면 바로 이해간다에 한표! 혹시 1편을 읽지 않았다면 1편부터!! 글 바로가기 ==================================== 오늘은 현대 CPU의 성능향상 기법 중 하나인 SMT에 대해 간단히 알아 보겠습니다. SMT는 Simutaneous Multi-threading의 약자로, 동시에 여러 스레드를 처리하는 기법을 통칭합니다. CPU의 성능을 올릴 때엔 '병렬성'(parallelism)이란 것을 추구하는 경우가 일반적인데 병렬성은..