본문 바로가기

버퍼4

컴퓨터 네트워크 29장 - RTP 프로토콜 - 컴퓨터 네트워크 29장- RTP 프로토콜 - 실시간 서비스로 멀티미디어 서비스 환경에 변화가 생겼다. 기존에는 비디오, 오디오 파일 전체를 다운받은 후 서비스를 받는 것이었다면 실시간 스트리밍 서비스의 등장으로 실시간으로 다운로드하며 재생하는 시대로 바뀌었다. 이로 인해 데이터를 전송하는 방식에서 데이터 변형/분실 오류를 복구하는 기능이 상대적으로 덜 중요하고 도착순서나 패킷의 지연 간격, 데이터 압축 등이 더 중요하게 되었다. 이런 멀티미디어의 서비스를 제공하기 위해서 프로토콜이 필요한데 TCP는 패킷의 순서와 신뢰성에 지나치게 강조를 하여 재전송 기능, 복잡한 흐름 제어 기능으로 인해 실시간 환경에서는 부적합하다. UDP의 경우 기능이 단순하여 빠른 전송을 할 수 있지만 데이터그램을 보낼 때 순서를 .. 2017. 5. 3.
버퍼 오버플로 & 포맷 스트링 공격 버퍼 오버플로 & 포맷 스트링 공격 버퍼 오버플로는 프로그램이 실행될 때 입력받는 값이 버퍼를 가득 채우다 못해 넘쳐흘러 버퍼 이후의 공간을 침범하는 현상을 말한다. 메모리를 다루는 데에 오류가 발생하여 잘못된 동작을 하는 프로그램 취약점이다. 데이터의 길이에 대한 불명확한 정의를 악용한 덮어쓰기로 인해 발생한다. 컴퓨터 보안과 프로그래밍에서 이는 프로세스가 데이터를 버퍼에 저장할 때 프로그래머가 지정한 곳 바깥에 저장하여 벗어난 데이터는 인접 메모리를 덮어 쓰게 되는데 손상 받은 데이터가 중요한 데이터일 경우 프로그램에 큰 영향을 미치게 된다. 버퍼 오버플로를 일으키는 기본적인 예시는 문자열에 할당된 메모리 용량보다 더 큰 공간을 할당했을 때이다. 예를 들면 8바이트 문자열을 넣을 수 있는 버퍼가 존재.. 2017. 4. 29.
운영체제 9장 - 프로세스 관리(6) : 생산자-소비자 문제 - 운영체제 9장- 프로세스 관리(6) : 생산자-소비자 문제 - 프로세스 동기화는 프로세스 관리 분야에서 중요한 분야이다. 앞의 장들은 동기화를 공부하기 위해 은행계좌 문제를 예시로 들어서 설명하였다. 이번 장은 대표적인 프로세스 동기화에 대한 문제인 생산자-소비자 문제를 설명 할 것이다. 생산자-소비자 문제는 생산자가 데이터를 생상하면 소비자는 그것을 소비하는 형태에서 발생하는 문제를 말한다. 컴퓨터 세계에서 예를 들면 웹 서버와 웹 클라이언트로 들 수 있다. 웹 서버가 데이터를 생산하여 웹에 관련되어 보여주는 작업들을 수행하고 웹 클라이언트는 웹 주소로 접속해 화면을 통해 보게 되는 형태의 소비 작용을 한다. 일반적으로 생산하는 속도와 소비하는 속도에 차이가 존재한다. 실제로 생산되는 속도가 소비하는 .. 2017. 4. 20.
컴퓨터 네트워크 11장 - 오류 제어 및 흐름 제어 - 컴퓨터 네트워크 11장- 오류 제어 및 흐름 제어 - 오류 제어는 호스트 간의 데이터 전송이 일어날 때 데이터의 오류에 관련된 제어를 하는 역할을 한다. 데이터 링크 계층 프로토콜에서 주로 기능을 수행한다. 다음의 질문들을 통해 오류 제어에 대해 알아보자. ∙송신 측은 수신 측이 정상적으로 수신하였다는 사실을 어떻게 알 수 있겠는가? 이는 응답 메커니즘에 의해 알 수 있다. 긍정 응답을 할 경우 제대로 받았다는 것을 알 수 있다. ∙전송한 데이터가 중간에 손실된 경우는 어떻게 알 수 있는가? 이와 같은 경우에 수신 측에서 이를 판단할 방법은 없다. 그렇다면 송신 측에서 이를 판단해야한다. 송신 측에서 타이머를 설정하여 주어진 시간 동안에 긍정 응답이 오지 않을 경우 손실로 판단하는 것이다. 긍정 응답 회.. 2017. 4. 17.