|

고속 네트워크에서의 메모리 병목 현상

메모리가 미래 통신에 있어서 병목 지점이 되는 이유를 설명하고 해결 방안을 제시하시오.


1) 메모리는 코드와 데이터를 함께 저장한다. 표현 계층이 개입한다면 메모리 연산이 증가하게 되어 병목 현상이 발생한다. -> 표현계층을 적게 사용한다.
2) 각 계층 이동시 메모리 연산 증가. OSI-7-layer에서 각 계층 이동시 메모리 복사가 빈번하게 일어나게 된다. -> shared memory, page remapping, 계층 통합 처리
3) 10Gbps링크의 경우 패킷 하나가 도달하는데 50ns밖에 걸리지 않는다. 반면 상용 메모리는 50ns당 한 번의 작업밖에 처리하지 못한다. 패킷 하나가 처리되는 데에는 최소 2번의 메모리 접근이 필요한데, 이 경우 메모리 접근 속도가 링크 속도를 따라오지 못한다. -> SRAM 사용, 메모리 접근 시간이 빠른 메모리의 사용
4) 네트워크로 들어오는 모든 데이터는 메모리를 통과해야 한다(네트워크 인터페이스 -> 메모리 -> CPU or HDD). 이때 시스템 버스를 사용하게 되는데 시스템 버스는 주로 CPU가 사용하게 된다. 시스템 버스는 병렬이여서 직렬인 링크보다 빠르지만, 배타적 접근이 불가하며, CPU가 주로 사용하게 되기 때문에 병목 현상이 발생한다. -> DMA사용

Similar Posts

  • Visual Studio 2010에서 OpenCV 라이브러리 빌드하기

    저번에 해봤던 “Visual Studio 2010에서 OpenCV 이용하기(http://deios.kr/395)”에서는 디버그 모드로 이용이 불가능한 문제가 있었습니다. 그래서 이 번에는 직접 OpenCV 2.1 라이브러리를 빌드해 보도록 하겠습니다.   먼저 CMake를 다운받습니다. CMake는 크로스 플렛폼 Make네요. http://www.cmake.org/cmake/resources/software.html 설치는 별 다른게 없습니다. 그냥 다음 연타로 CMake를 설치해 줍니다.   다음으로 OpenCV 2.1 Windows Version을 다운받고, 적당한 곳에 압축을 풀어 줍니다. http://sourceforge.net/projects/opencvlibrary/files/opencv-win/2.1/OpenCV-2.1.0-win.zip/download…

  • robots.txt 만들기

    1. 기본 형식 User-agent: 규칙을 적용할 Agent Disallow: 차단할 URL Allow: 허용할 URL URL은 대소문자를 구별한다. 정규표현식을 사용할 수 있다. 2. 예제 모든 Agent에 대해서 모든 URL의 접근을 불허 User-agent: * Disallow: / 관련된 글: Tistory 암호화되지 않은 암호 전송 고속 네트워크 프로토콜의 목적과 수행과정 고속 네트워크에서의 메모리 병목 현상 TCP 폭주(혼잡)제어

  • RGB 컬러 공간 분리 – 메뉴 기반 구현2

    이번에는 지난 시간에 해 봤던 “RGB 컬러 공간 분리 – 메뉴 기반 구현(http://deios.kr/407)”의 새 창으로 여는 부분을 조금 더 일반화 하고, MFC에 적합하게 만들어 보겠습니다.   먼저 새 창으로 이미지를 여는 전역 함수를 작성해 보겠습니다. App Class의 헤더 파일을 열어 가장 마지막에 다음과 같이 추가해 줍니다. void OpenByNewDocument(LPTSTR szTitle, IplImage * image);  이 전역 함수는…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다