LabHub
배우기 러닝패스 코스

TCP 택배가 잘려 도착했다 · 사라진 메시지 경계를 찾아라 · 퀴즈

퀴즈: 사라진 메시지 경계를 찾아라

LabHub 에서 이어서 보기

문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.

  1. send를 두 번 하면 recv는 몇 번 호출해야 하나요?

    1. 언제나 한 번이면 두 본문을 받는다
    2. 받은 바이트와 프레임 상태에 따라 달라진다
    3. 언제나 두 번이면 경계가 보존된다
    4. 헤더가 있으면 recv 호출은 필요 없다
  2. UTF-8 문자열의 길이 헤더에는 무엇을 쓰나요?

    1. 화면에 보이는 글자 수
    2. 문자열 객체의 메모리 크기
    3. 헤더와 본문을 합한 길이
    4. 인코딩한 본문의 바이트 수
  3. 완성 프레임 뒤에 다음 헤더 2바이트가 남으면?

    1. 잔여를 같은 Decoder에 보관한다
    2. 현재 본문 뒤에 붙여 반환한다
    3. 다음 호출을 위해 잔여를 버린다
    4. 다른 연결의 헤더와 합친다
  4. feed 결과 []와 [b""]의 차이는?

    1. 둘 다 연결이 끊겼다는 의미다
    2. 둘 다 잘못된 데이터이므로 예외다
    3. 미완성과 길이 0 메시지 한 개다
    4. 둘 다 무시해도 순서는 유지된다
  5. 헤더 3바이트를 받은 뒤 EOF가 오면?

    1. 길이 0 본문으로 처리한다
    2. 미완성 프레임 오류로 처리한다
    3. 정상 종료이므로 잔여를 버린다
    4. 0을 보충해서 헤더를 완성한다
  6. 파서의 분할 회귀 시험에 적절한 방식은?

    1. recv가 항상 4바이트 주도록 기대한다
    2. 로컬에서 한 번 성공하면 마친다
    3. send 사이에 같은 sleep만 넣는다
    4. 같은 프레임을 모든 분할점에서 공급한다