간편결제, 신용카드 청구할인
PAYCO(페이코) 최대 5,000원 할인
(페이코 신규 회원 및 90일 휴면 회원 한정)
네이버페이 1%
(네이버페이 결제 시 적립)
북피니언 롯데카드 30% (31,500원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (36,000원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (40,500원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (41,850원)
(최대할인 3만원 / 3만원 이상 결제)
Close

리눅스 네트워크의 이해

원제 : Understanding Linux Network Internals
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 27
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

50,000원

  • 45,000 (10%할인)

    2,500P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 출고완료 후 14일 이내 마이페이지에서 적립받기한 경우만 적립됩니다.
  • 추가혜택
    배송정보
    주문수량
    감소 증가
    • 이벤트/기획전

    • 연관도서(27)

    • 사은품(9)

    출판사 서평

    클라우드 시대가 다시 도래하면서 네트워크에 대한 관심이 재조명되고 있습니다. 이전 세대에서 오픈플로우(penflw)기반의 네트워크만을 SDN이라고 규정했지만, 현 시대에는 패킷 전송 자동화에 대한 전반적인 부분 그리고 클라우드/가상머신과의 조합을 통한 빠른 배포와 같은 '프로그램화'가 더 중요하게 인식되고 있어서 네트워크 기술만으로 이것을 정의하기는 어려워졌습니다. 그리고 네트워크 장비들도 자사의 네트워크 S로 리눅스를 선택하는 경우가 점점 늘어나서, 리눅스의 네트워크 인프라스트럭처에 대한 이해가 점점 요구되고 있습니다. 이런 시대의 흐름에 맞추어서 이 책은 리눅스가 가지고 있는 네트워크 기능의 기본 이론은 물론 코드레벨까지 설명함으로써 네트워크 엔지니어지만 서버기반 네트워크를 잘 모르시는 분들이나 리눅스 서버 엔지니어지만 네트워크 작동 원리에 대해서 잘 모르시는 분들 모두에게 도움이 될 것입니다.

    이 책에서 다루는 내용

    네트워킹에서의 주요 문제
    인접인프라스트럭처와 프로토콜(ARP)
    네트워크인터페이스카드(NIC)장치 드라이버
    브리징
    시스템 초기화
    라우팅
    계층 2(연결 계층) 작업과 구현
    ICMP
    계층 3(IPv4)작업과 구현

    이 책의 대상 독자

    이 책은 네트워킹에 대한 지식을 갖고 있는 사람과 인터넷 엔진(즉, IP 등)이 어떻게 운영체제의 첫 번째 계층 상단에서 동작하는지 궁금한 사람들에게 유익할 것이다. 하지만 각 주제에 대한 이론적인 소개도 해뒀으므로, 입문자들도 금방 따라갈 수 있을 것이다. 어려운 주제들은 충분한 예제들을 통해 이해하기 쉽게 했다.
    리눅스는 기본 IP만 지원하지 않고, 꽤 많은 고급 기능을 제공한다. 이 기능들이SMP(Symmetric Multiprcessing)와 커널 선점 방식 같은 커널의 특징들과 함께 충분히 제 역할을 발휘하기 위해서는 섬세하게 다뤄져야 한다. 리눅스 커널의 네트워킹 코드가 독자들이 학습하고 지식을 쌓기 위한 좋은 장이 될 것이다.
    또한 독자가 내 의도를 이해하고 배우는 데 흥미를 가진다면 이 책으로부터 만족스러울 만큼 충분한 내용들을 얻을 수 있을 것이다.

    이 책의 구성

    네트워킹 코드에서 다룰 주제에 따라 1개의 장(chapter)만으로 충분한 것도 있지만, 7개의 장까지 할애한 주제도 있다. 여러 장을 차지할 만큼 복합적이거나 규모가 큰 주제의 경우, 먼저 해당 주제에 대한 이론적인 부분과 개요를 시작 부분에서 다룬다. 모든 참고 사항과 보조 항목들은 해당 부의 마지막 장 '기타' 절에 있다. 얼마나 큰 주제 항목이든 장이 구성되는 틀은 동일하다.
    각 주제별로 구현에 대한 설명은 다음과 같은 항목들을 포함한다.

    - 큰 그림- 해당 커널 컴포넌트가 네트워크 스택의 어디에 해당하는지 보여준다.
    - 주요 데이터 스트럭처와 그림에 대한 간략한 설명- 이들이 서로 어떻게 연관돼 있는지 설명해준다.
    - 컴포넌트와 인터페이스 관계인 다른 커널 기능에 대한 설명- 예를 들어 알림 체인이나 데이터 스트럭처는 상호 참조적이다. 네트워킹 코드를 뛰어넘는 수많은 훅(hk)들을 고려했을 때 방화벽은 이러한 커널 특징의 예 중 하나다.
    - 플로차트의 확장 가능한 사용법, 코드 이해를 도울 그림, 규모가 크고 복잡한 함수에 대한요약된 로직

    참고 내용들은 모두 다음과 같은 항목들을 포함하고 있다.

    - 가장 중요한 데이터 스트럭처에 대한 필드별 상세 설명
    - 빠르게 참고해볼 수 있는 모든 함수와 매크로, 데이터 스트럭처에 대한 간략한 설명이 담긴 표
    - 해당 장에서 다룬 커널 소스 구조에 위치해 있는 파일 목록
    - 해당 장의 주제가 된 내용과 커널을 설정하기 위해 사용되는 가장 일반적인 사용자 공간도구들 간의 인터페이스에 대한 설명
    - /prc에 생성되는 파일에 대한 설명

    리눅스 커널의 네트워킹 코드는 이동 표적일 뿐만 아니라 패스트 러너(fast runner)다. 이 책에서 모든 네트워킹 기능을 다루지는 않는다. 이 책을 읽는 중에도 신규 기능들은 추가되고 있을 것이다. 개인 사용자 혹은 단체, 대학 프로젝트에서의 요청으로 많은 신규 기능이 생겨나지만, 이 기능들이 전반적인 사용자에게 유용한 것이라고 판단됐을 때 공식 커널에 등록된다. 이러한 기능들에 대한 자세한 구현 내용을 다루면서 기능이 포괄적으로 구현됐을 때 어떠한 양상을 보일지에 대한 아이디어도 제공하고자 노력했다. 이는 코드를 수정하거나 어떻게 신규 기능을 구현할지 배울 때 매우 유용할 것이다. 예를 들어 어떠한 기능이든지 간에 다음 항목들을 고려해봐야 한다.

    - 어떻게 데이터 스트럭처와 락 기능을 설계할 것인가?
    - 사용자 공간 환경설정 도구가 필요한가? 필요하다면 기존 시스템이나 ictl 명렁어, /prc 파일, 넷링크 소켓을 호출해 커널과 상호작용하는가?
    - 신규 알림 체인이 필요하진 않은가? 그리고 기존 체인에 등록해야 하지는 않는가?
    - 방화벽과는 어떠한 관계가 있는가?
    - 캐시나 가비지 컬렉션 메커니즘, 통계 등에 대한 요구는 없는가?

    이 책에서 다루는 주제들은 다음과 같다.

    사용자 공간과 커널 간의 인터페이스

    3장에서는 커널 내에서 대응되는 대상들과 상호작용하기 위해 사용되는 환경설정 도구와 통신하기 위한 메커니즘에 대한 간략한 개요가 나온다. 자세히 다루지는 않을 예정이지만, 커널 코드의 해당 부분에 대해 이해하는 데 도움이 될 것이다.
    시스템 초기화
    II부에서는 네트워킹 코드의 주요 컴포넌트를 초기화하는 방법을 설명하고, 어떻게 네트워크 장치가 등록되고 초기화되는지 다룬다.
    디바이스 드라이버와 프로토콜 핸들러 간의 인터페이스
    III부는 어떻게 인입(들어오는 혹은 수신하는) 패킷이 디바이스 드라이버에 의해 상위 계층 프로토콜로 전달되는지, 그리고 그 반대 방향 또한 어떻게 전달되는 것인지에 대해 상세히 설명한다.
    브리징(bridging)
    IV부에서는 투명 브리징(transparent bridging)과 스패닝 트리 프로토콜(spanning tree prtcl), L3에 라우팅하는 상대인 L2에 대해 설명한다.
    IPv4(인터넷 프로토콜 버전 4)
    V부에서는 IPv4 계층에서 패킷들의 수신과 전달, 로컬 전송이 어떻게 이뤄지는 것인지 설명한다.
    IPv4와 전송 계층(L4) 프로토콜 간의 인터페이스
    20장은 로컬 호스트로 전달되도록 요청된 IPv4 패킷이 어떻게 전송 계층(L4) 프로토콜로 전달되는지에 대해 다룬다(TCP, UDP 등).
    ICMP(Internet Cntrl Message Prtcl)
    25장은 ICMP의 구현에 대해 설명한다(이 책에서 다루는 유일한 전송 계층(L4) 프로토콜이다).
    인접 프로토콜
    인접 프로토콜들은 주어진 자신의 IP 주소들을 고려해 로컬 네트워크 주소를 찾는다. VI부는 다양한 프로토콜의 일반적인 구조와 IPv4가 사용하는 ARP 인접 프로토콜에 대한 세부 내용을 다룬다.
    라우팅
    이 책에서 가장 많은 부분인 VII부에서는 라우팅 캐시와 테이블에 대해 다룬다. 정책 라우팅, 다중 경로와 같은 고급 기능들에 대해서도 다룬다.

    지은이의 말

    오늘날 네트워킹은 그 어느 때보다도 더 많은 관심을 받고 있다. 최신 전자 제품들은 네트워킹 기능을 내장하고 있으며, 인터넷의 규모와 활용 폭은 계속해서 커지고 있다. 임베디드 기기 제작자들이 강력하며 자유로운 사용성을 제공하는 리눅스처럼 기능이 풍부한 오퍼레이팅 시스템을 선택하는 것은 그리 놀라운 일이 아니다. 이러한 네트워킹 기능은 어떠한 종류의 네트워킹 기기에든 오퍼레이팅 시스템이 최적화될 수 있게 해준다. 이미 보유하고 있는 기능들의 구현은 물론, 새로운 기능 추가도 쉽게 해준다. 독자가 임베디드 기기 개발자거나 리눅스 사용 경험이 있는 학생이라면 이 책이 매우 유용할 것이다.
    리눅스를 사용하는 순수 소프트웨어 기반 제품의 성능은 특화된 하드웨어의 도움을 받는 상용 제품들과 비교될 수 없다. 이는 물론 소프트웨어를 비판하는 것이 아니라, 전용 하드웨어와 일반 CPU 간의 속도 차이로 인한 결과임을 인정해야 한다는 의미다. 하지만 리눅스는 분명 소프트웨어 기반의 저가형 상용 제품과 견줄만하다. 물론 단순한 리눅스 커널의 확장은 벤더가 하이브리드 시스템상에서 리눅스를 적절히 사용할 수 있게 해준다. 이는 필수 디바이스 드라이버의 작성 문제일 뿐이다.
    또한 리눅스는 대학 프로젝트 구현에서 자주 선택되는 오퍼레이팅 시스템이다. 모두가 이를 공식적인 커널로 (적어도 즉시는) 만들지는 않는다. 일부는 공식 커널로 만들어지지만, 나머지는 단순히 공식 커널의 패치로 온라인에서 사용할 수 있게 한다. 잠재적으로 수백만 사용자들이 여러분이 기여한 리눅스 커널을 사용하게 된다는 것은 매우 만족스럽지 않겠는가? 여기에는 딱 하나의 단점이 있을 뿐이다. 여러분의 기여가 정말 의미 있는 것이라면 수많은 감사와 도움 요청 메일을 감당할 수 없을 것이다.
    리눅스의 인기는 수년간 계속해서 커지고 있으며, 앞으로도 분명 그럴 것이다.
    나는 볼로냐 대학에서 10여 년 전에 컴퓨터 사이언스 학과를 졸업했으며, 여기서 처음으로 리눅스를 접했다. 얼마나 멋진 소프트웨어 작품이던가!
    집에 있던 i286/486 컴퓨터로 이미지 프로세싱 프로젝트를 수행했기 때문에, 학교 랩에 있던 몇 안 되는 썬(Sun)사 워크스테이션을 차지하기 위해 경쟁할 필요가 없었다.
    그때부터 리눅스와 맺은 인연은 계속됐다. 게다가 어셈블리 언어로 개발하는 것과 다양한 베이직(BASIC) 통용어에 대해 알게 되면서, C64 세대에 대한 좋은 인상들이 대체되기 시작했다. 나는 C64 세대에 속해 있었고, 얼마 동안 C64에서 처음 느꼈던 프로그래밍 경험에 대한 기쁨과 리눅스 커널에서의 여정을 비교하게 됐다.
    내가 처음으로 네트워킹 세계를 접했을 때 리눅스에서 사용할 수 있는 도구들을 사용해보기 시작했다. 또한 이탈리아 UNESC 센터에서 일할 기회가 있었는데, 리눅스를 기반으로 그들의 네트워킹 코스를 개발했다. 그곳에서 모든 종류의 네트워크 기기들과 문서가 갖춰져 있고 리눅스를 연구하고 합작해볼 수 있는 기회가 많은 연구실을 이용할 수 있었다.
    안타깝게도 나는 아주 작은 부분까지도 모두 완벽히 이해해야 직성이 풀리는 성격이었다(하지만 이 덕분에 독자들에겐 유익했을 거라 믿는다). 그래서 나는 UNESC에서 커널 코드를 살펴보기 시작했다. 이는 내 지식도 채워주고, 사용자 공간 환경설정 도구를 만드는 데에도 도움이 됐다. 환경설정 도구가 구체적인 옵션을 제공하지 않을 때마다 나는 구체적인 옵션을 추가하는 것이 단순한 작업으로 가능한 것일지 아니면 커널에 중대한 변경을 요하는 일일지 알 수 있었다. 따라서 이러한 종류의 연구에 계속해서 파고들었다.
    리눅스 커널(2.0, 2.2 버전 개정)의 확장판으로써 일부 도구를 개발한 이후, 오퍼레이팅 시스템과 네트워킹에 대한 애정이 나를 실리콘 밸리로(Cisc Systems)로 이끌었다. 언어를 배울 때 인간의 언어든 프로그래밍 언어든 간에 이런 규칙이 있다. 습득한 언어가 많을수록 새로운 언어를 쉽게 배울 수 있다. 즉 각 언어의 장단점을 알고, 그렇게 언어가 만들어진 이유를 이해하는 것 등이 용이해진다. 오퍼레이팅 시스템에도 이는 똑같이 적용된다.
    나는 리눅스 커널의 다른 분야들과 달리 네트워킹 코드와 관련해서는 좋은 서적이 없음을 발견하고, 그 부분을 채워보기로 결심했다. 이 책이 내가 수년 전에 있었더라면 좋았을 거라 생각해왔던 좋은 입문 서적이 되길 소망한다.
    이 책은 오라일리'Reilly의 다른 두 커널 관련 서적들([Understanding the Linux Kernel]과 [Linux Device Drivers]과 함께, 리눅스 커널 내부에 대해 학습할 수 있을 좋은 입문서다. 이 책들은 상호보완적이며, 여기에서 다루지 않은 내용이 있다면 다른 보충 서적들도 참고해보자.
    이왕이면 커피와 함께 음악을 틀어놓고 어떻게 이 기능들이 구현됐는지 찬찬히 이해하려 노력해보는 것이 어떨까. 이렇게 해본다면 다른 그 어떤 방법보다도 지식이 오래 유지될 것이다. 지름길보다 돌아서 가는 길에서 얻는 것이 많을 때도 있는 것처럼 말이다.

    옮긴이의 말

    이전에는 컴퓨터나 서버를 사면 처음 하는 일이 S 설치였는데, 이제는 구입할 때 이미 S가 설치된 상태이므로 가장 먼저 하는 일은 웹브라우저를 띄운 다음 인터넷이 작동하는지 확인하는 것이다. 고정 IP를 받든 DHCP를 통해 동적 주소를 할당받든 현 시대의 IT 엔지니어에게 네트워크는 없으면 안 되는 필수 요건이 됐다.
    몇 년 전 소프트웨어 정의 네트워크(SDN, Sftware Defined Netwrk)라는 용어가 유행하기 시작했다. SDN은 오픈플로우(penflw)라는 새로운 패킷 제어 프로토콜을 기반으로 회선 장애나 트래픽이 몰릴 경우 중앙의 오픈플로우 제어기가 이를 감지해 자동으로 정상 라인이나 트래픽 분산을 가능하게 할 수 있는 기술이라고 하여 엄청난 반향을 일으켰고, 실제로 일부 오픈플로우 제어기는 엄청난 가격에 팔리기도 했다.
    시스코, 주니퍼 같은 벤더 쪽 이외에도 서비스 업체인 구글, 페이스북, 카카오 등 회사들도 자사가 사용 중인 소프트웨어 정의 네트워크를 논문이나 오픈소스로 공개하고 있다. 최근 SDN의 주요 특징은 별도의 네트워크 장비나 프로토콜을 새로 지정하는 형태가 아니라, 네트워크 하드웨어는 화이트박스라고 불리는 공용 하드웨어를 사용하고(마치 조립식 컴퓨터와 같다) 그 위에 네트워크 전용 S라고 불리는 NS를 위치시키는 형태로 진행되고 있다.
    그리고 대부분의 NS업체들은 리눅스를 기반으로 커널 패치, 프로그램 등을 올려 판매하고 있다. 그러다 보니 다시금 리눅스 네트워크 스택들을 알아야 하는 시대가 되었다. 기존 네트워크 장비가 CLI나 특별한 툴을 통해 설정을 했다면 이제는 리눅스 명령어들의 조합을 통해 설정해야 하고, 이전에는 네트워크 장비의 특정 프로토콜에 의존하던 것을 이제는 일반적인 프로토콜이나 프로그램을 통해 모든 네트워크 장비를 다뤄야 한다. 반대로 네트워크 장비가 리눅스를 기반으로 운영되므로 개발자들도 네트워크 장비를 설정할 수 있게 됨으로써 이제는 서버 개발자들이 네트워크 기능을 개발하기 위해 리눅스 네트워크를 좀 더 자세히 알아야 할 필요가 생겼다.
    이 책은 커널 2.4 기반의 네트워크 스택과 인프라스트럭처를 기본 개념과 동작 원리, 각 스택과 계층 간의 상호작용에 대해 코드레벨까지 설명하므로 리눅스 네트워크를 이해하는 데 아주 큰 도움이 될 것이다.

    목차

    I부. 소개
    1장. 도입
    기본 용어
    공통 코딩 패턴
    사용자 공간 도구
    소스코드 훑어보기
    기능이 패치로 제공될 때

    2장. 주요 데이터 스트럭처
    소켓 버퍼 스트럭처- sk_buff Structure
    net_device 스트럭처

    3장. 사용자 공간과 커널 간 인터페이스
    개요
    prcfs와 sysctl
    ictl
    넷링크
    설정 변경의 직렬화

    II부. 시스템 초기화
    4장. 알림 체인
    알림 체인의 목적
    개요
    체인 정의
    체인에 등록
    체인에 이벤트 알림
    네트워크 서브시스템의 알림 체인
    /prc 파일 시스템을 통한 튜닝
    4장에서 다룬 함수와 변수
    4장에서 다룬 파일과 디렉터리

    5장. 네트워크 장치 초기화
    시스템 초기화 개요
    장치 등록과 초기화
    NIC 초기화의 기본 목적
    장치와 커널 간 통신
    초기화 옵션
    모듈 옵션
    장치 처리 계층 초기화- net_dev_init
    사용자 공간 헬퍼
    가상 장치
    /prc 파일 시스템을 사용한 튜닝
    5장에서 다룬 함수와 변수
    5장에서 다룬 파일과 디렉터리

    6장. PCI 계층과 네트워크 인터페이스 카드
    6장에서 설명하는 데이터 스트럭처
    PCI NIC 디바이스 드라이버 등록
    전원 관리와 Wake-n-LAN
    PCI NIC 드라이버 등록의 예
    큰 그림
    /prc 파일 시스템을 통한 튜닝
    6장에서 다룬 함수와 변수
    6장에서 다룬 파일과 디렉터리

    7장. 컴포넌트 초기화를 위한 커널 인프라스트럭처
    부팅 시 커널 옵션
    모듈 초기화 코드
    최적화된 매크로 기반 태깅
    부팅 시 초기화 루틴
    메모리 최적화
    /prc 파일 시스템을 통한 튜닝
    7장에서 다룬 함수와 변수
    7장에서 다룬 파일과 디렉터리

    8장. 장치 등록과 초기화
    장치 등록 순간
    장치 해지 순간
    net_device 스트럭처의 할당
    NIC 등록과 해지 개요
    장치 초기화
    net_device 스트럭처의 구조
    장치 상태
    장치 등록과 해제
    장치 등록
    장치 등록 해제
    네트워크 장치의 활성화와 비활성화
    장치 큐잉 정책 상태 갱신
    사용자 공간에서 장치 관련 정보의 설정
    가상 장치
    락킹
    /prc 파일 시스템을 통한 튜닝
    8장에서 다룬 함수와 변수
    8장에서 다룬 파일과 디렉터리

    III부. 전송과 수신
    9장. 인터럽트와 네트워크 드라이버
    결정과 트래픽 방향
    프레임 수신 시 드라이버 알림
    인터럽트 핸들러
    sftnet_data 스트럭처

    10장. 프레임 수신
    기타 기능과 상호작용
    장치의 활성화와 비활성화

    커널의 프레임 리셉션 알림- NAPI와 netif_rx
    디바이스 드라이버와 커널의 구인터페이스- netif_rx의 첫 부분
    혼잡 관리
    NET_RX_SFTIRQ의 처리- net_rx_actin

    11장. 프레임 전송
    전송의 활성화와 비활성화

    12장. 인터럽트에 대한 이해와 참고 사항
    통계
    /prc와 sysfs 시스템을 통한 튜닝
    III부에서 다룬 함수와 변수
    III부에서 다룬 파일과 디렉터리

    13장. 프로토콜 핸들러
    네트워크 스택 개요
    적절한 프로토콜 핸들러의 실행
    프로토콜 핸들러 구조
    프로토콜 핸들러 등록
    이더넷과 IEEE 802.3 프레임
    /prc 파일 시스템을 통한 튜닝
    13장에서 다룬 함수와 변수
    13장에서 다룬 파일과 디렉터리

    IV부. 브리징
    14장. 브리징- 개념
    리피터, 브리지, 라우터
    브리지와 스위치
    호스트
    브리지로 LAN 병합
    다른 LAN 기술을 브리징
    주소 학습
    다중 브리지

    15장. 브리징- 스패닝 트리 프로토콜
    기본 용어
    계층적으로 스위치된 L2 토폴로지의 예
    스패닝 트리 프로토콜의 기본 구성 요소
    브리지와 포트 ID
    브리지 프로토콜 데이터 유닛(BPDU)
    활성화된 토폴로지의 정의
    타이머
    토폴로지 변경
    BPDU 캡슐화
    설정 BPDU의 전송
    인입 프레임 처리
    수렴 시간
    새로운 스패닝 트리 프로토콜에 대한 개괄

    16장. 브리징- 리눅스에서 구현
    브리지 장치의 개념
    주요한 데이터 스트럭처
    브리징 코드의 초기화
    브리지 장치와 브리지 포트 생성
    새로운 브리지 장치 생성
    브리지 장치의 설정 루틴
    브리지 삭제
    브리지에 포트 추가
    브리지 장치 활성화와 비활성화
    브리지 포트 활성화와 비활성화
    브리지 포트의 상태 변경
    큰 그림
    포워딩 데이터베이스
    인입 트래픽 처리
    브리지 장치에 전송
    스패닝 트리 프로토콜(STP)
    netdevice 알림 체인

    17장. 브리징- 기타 주제
    사용자 공간 설정 도구
    /prc 파일 시스템을 통한 튜닝
    /sys 파일 시스템을 통한 튜닝
    통계
    IV부에서 다룬 데이터 스트럭처
    IV부에서 다룬 함수와 변수
    IV부에서 다룬 파일과 디렉터리

    V부. 인터넷 프로토콜 버전 4(IPv4)
    18장. IPv4- 개념
    IP 프로토콜- 개요
    IP 헤더
    IP 옵션
    패킷 단편화/단편화 제거
    체크섬

    19장. IPv4- 리눅스 기초와 특징
    주요 IPv4 스트럭처
    일반 패킷 처리
    IP 옵션

    20장. IPv4- 포워딩과 로컬 전달
    포워딩
    로컬 전송

    21장. IPv4- 전송
    전송을 위한 주요 함수
    인접 서브시스템으로의 인터페이스

    22장. IPv4- 단편화 처리
    IP 단편화
    IP 단편화 제거

    23장. IPv4- 기타 주제
    수명이 긴 IP 피어 정보
    IP 헤더의 ID 필드 선택
    IP 통계
    IP 설정
    IP 오버 IP
    IPv4- 무엇이 문제인가?
    /prc 파일 시스템을 통한 튜닝
    V부에서 다룬 데이터 스트럭처
    V부에서 다룬 함수와 변수
    V부에서 다룬 파일과 디렉터리

    24장. 4계층 프로토콜과 원시 IP 다루기
    가용 L4 프로토콜
    L4 프로토콜 등록
    L3에서 L4로 전송- ip_lcal_deliver_finish
    IPv4 대 IPv6
    /prc 파일 시스템을 통한 튜닝
    24장에서 다룬 함수와 변수

    25장. ICMPv4
    ICMP 헤더
    ICMP 페이로드
    ICMP 타입
    ICMP 프로토콜을 이용한 애플리케이션
    큰 그림
    프로토콜 초기화
    25장에서 다룬 데이터 스트럭처
    ICMP 메시지 전송
    ICMP 메시지 수신
    ICMP 통계
    전송 계층으로 오류 통지 전달
    /prc 파일 시스템을 통한 튜닝
    25장에서 다룬 함수와 변수
    25장에서 다룬 파일과 디렉터리

    VI부. 인접 서브시스템
    26장. 인접 서브시스템- 개념
    인접 호스트란?
    인접 프로토콜이 필요한 이유
    공유 매체
    리눅스 구현
    인접 프로토콜 프록싱
    인접 상태와 네트워크 접근 불가 탐색(NUD)

    27장. 인접 서브시스템- 인프라스트럭처
    주요 데이터 스트럭처
    L3 프로토콜과 인접 프로토콜의 공통 인터페이스
    인접 인프라스트럭처의 일반적인 작업
    neighbur 스트럭처의 참조 카운트
    neighbur 항목 생성
    이웃 제거
    프록시로 동작
    L2 헤더 캐싱
    프로토콜 초기화와 제거
    서브시스템 간 상호작용
    인접 프로토콜과 L3 전송 함수의 상호작용
    큐잉

    28장. 인접 서브시스템- 주소 결정 프로토콜(ARP)
    ARP 패킷 포맷
    ARP 트랜잭션의 예
    Gratuitus ARP
    다중 인터페이스에서의 응답
    설정 가능한 ARP 옵션
    ARP 프로토콜 초기화
    neighbur 스트럭처의 초기화
    ARP 패킷의 송신과 수신
    인입 ARP 패킷 처리
    프록시 ARP
    예제
    외부 이벤트
    ARPD
    역주소 결정 프로토콜(RARP)
    ND(IPv6)에서 ARP(IPv4)보다 개선된 점

    29장. 인접 서브시스템- 기타 주제
    이웃의 시스템 관리
    /prc 파일 시스템을 통한 튜닝
    VI부에서 다룬 데이터 스트럭처
    VI부에서 다룬 파일과 디렉터리

    VII부. 라우팅
    30장. 라우팅- 개념
    라우터와 라우트, 라우팅 테이블
    라우팅의 필수 요소
    라우팅 테이블
    룩업
    패킷 수신과 패킷 전송

    31장. 라우팅- 고급
    정책 라우팅의 개념
    다중 경로 라우팅의 개념
    다른 커널 서브시스템과의 상호작용
    라우팅 프로토콜 데몬
    Verbse 모니터링
    ICMP_REDIRECT 메시지
    공유 미디어
    역방향 필터링

    32장. 라우팅- 리눅스 구현
    커널 옵션
    주요 데이터 스트럭처
    라우트와 주소 범위
    1차, 2차 IP 주소
    제네릭 헬퍼 루틴과 매크로
    전역 락
    라우팅 서브시스템 초기화
    외부 이벤트
    다른 서브시스템과의 상호작용

    33장. 라우팅- 라우팅 캐시
    라우팅 캐시 초기화
    해시 테이블 구성
    다중 경로 캐싱
    DST와 호출 프로토콜 간의 인터페이스
    라우팅 캐시 플러싱
    가비지 컬렉션
    인출 ICMP REDIRECT 속도 제한

    34장. 라우팅- 라우팅 테이블
    라우팅 해시 테이블 구성
    라우팅 테이블 초기화
    라우트 추가, 삭제
    정책 라우팅과 정책 라우팅의 영향을 받는 라우팅 테이블 정의

    35장. 라우팅- 룩업
    상위 레벨 관점의 룩업 함수
    헬퍼 루틴
    테이블 룩업- fn_hash_lkup
    fib_lkup 함수
    수신과 전송을 위한 함수 설정
    입력/출력 라우팅 루틴의 일반적인 구조
    입력 라우팅
    출력 라우팅
    다음 홉 선택상의 다중 경로의 영향
    정책 라우팅
    출발지 라우팅
    분류자 기반의 정책 라우팅과 라우팅 테이블

    36장. 라우팅- 기타 주제
    사용자 공간 설정 도구
    통계
    /prc 파일 시스템을 통한 튜닝
    포워딩 활성화와 비활성화
    VII부에서 다룬 데이터 스트럭처
    VII부에서 다룬 함수와 변수
    VII부에서 다룬 파일과 경로

    저자소개

    크리스찬 벤베누띠(Christian Benvenuti) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    이탈리아의 볼로냐 대학교에서 컴퓨터 과학 석사학위를 받았다. 몇 년간 트리에스테(Trieste)에 위치한 이론 물리학 국제센터(ICTP)에서 외부 협업 관련 프로젝트의 과학 컨설턴트로 일했다. 이곳에서 리눅스 커널 기반의 애드혹 소프트웨어를 개발했으며, 네트워킹과 관련된 몇몇 교육 과정의 전임 강사로 활동했다. 이 교육 과정은 주로 유럽, 아프리카, 남아메리카의 개발도상국 과학자들을 위해 개설돼 리눅스 시스템을 기반으로 한 내용을 다뤘으며, 이 국가들은 ICTP가 수년간 리눅스 사용을 촉진시키기 위해 집중했던 국가들이었다. 종종 ICTP 구성원과 Cllabrium

    펼쳐보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    국내 최대 메신저 회사에서 클라우드 서비스 개발 리딩을 맡고 있으며, 데이터 센터 자동화, 프라이빗/퍼블릭 클라우드 서비스와 그에 필요한 기술을 연구, 개발해서 실제 서비스에 적용하고 있다. 2015년에는 캐나다 밴쿠버에서 열린 오픈스택 서밋에서 국내 개발자 중 최초로 'SDN without SDN'이라는 제목으로 발표했고, 2016년(도쿄)과 2017년(몬트리얼) Netdev 컨퍼런스에서 역시 국내 최초로 확장가능한 컨테이너 네트워크에 대해 발표했다. 한양대학교에서 연소해석 분야로 석사 학위를 취득했으며, 한국 데이터베이스 진흥원 자문위원, 클라우드컴퓨팅조합에서

    펼쳐보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    웹, 애플리케이션, 서버관리, 커널 등 다양한 분야에 관심이 있으며, IT 서적 번역에도 몇 권 참여한 새내기 번역가이기도 하다.
    다양한 분야의 지식을 어떻게 하면 효율적으로 습득, 유지 관리할 수 있는지에 대해 고민하고 있다.
    현재는 캐노니컬에서 근무중이며, 우분투의 발전을 위해 노력하고 있다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    인하대학교 지리정보공학과를 졸업했다. 주식회사 SK C&C(구 SK C&C) 클라우드 컴퓨팅 사업 팀에서 인턴 생활을 했고, 대학교 졸업 후 SK 주식회사 C&C에 입사해 현재까지 근무 중이다. 최근 3년간 빅데이터 실시간 처리 및 활용 부분을 담당해 왔으며 올해부터는 ICT R&D 조직에서 머신 데이터의 실시간 수집, 처리, 저장, 검색에 대한 연구를 진행 중이다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    연세대 컴퓨터공학과를 졸업했다. IBM, 네이버, 넥슨코리아, KT클라우드웨어, 비디를 거치면서 네트워크 및 클라우드와 관련된 일을 하고 있다.

    이 상품의 시리즈

    에이콘 오픈소스 프로그래밍 시리즈(총 35권 / 현재구매 가능도서 28권)

    펼쳐보기

    이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

      리뷰

      0.0 (총 0건)

      기대평

      작성시 유의사항

      평점
      0/200자
      등록하기

      기대평

      10.0

      교환/환불

      교환/환불 방법

      ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

      교환/환불 가능 기간

      고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

      교환/환불 비용

      고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

      교환/환불 불가사유

      반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
      배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

      소비자 피해보상

      소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
      교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

      기타

      도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

      배송안내

      • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

      • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

      • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

      • 배송비

      도서(중고도서 포함) 구매

      2,000원 (1만원이상 구매 시 무료배송)

      음반/DVD/잡지/만화 구매

      2,000원 (2만원이상 구매 시 무료배송)

      도서와 음반/DVD/잡지/만화/
      중고직배송상품을 함께 구매

      2,000원 (1만원이상 구매 시 무료배송)

      업체직접배송상품 구매

      업체별 상이한 배송비 적용