1 / 7

컴퓨터 네트워크 Chapter 11 RPC 프로그래밍 임효택

컴퓨터 네트워크 Chapter 11 RPC 프로그래밍 임효택. RPC 프로그래밍. 소개. [ 그림 11.1] RPC 원격 절차 호출 모델. RPC 프로그래밍. - RPC 클라이언트 클라이언트는 클라이언트 stub 라고 하는 프로시져를 호출 한다 . 클라이언트 stub 의 목적 파라미터를 모아서 필요함녀 이들을 표준화된 형식으로 바꾼 다음 하나 이상의 네트워크 메시지를 만드는 것 . 미샬링 : 클라이언트 파라미터들을 하나의 네트워크 메시지로 만드는 것 .

Download Presentation

컴퓨터 네트워크 Chapter 11 RPC 프로그래밍 임효택

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PART 03 프로그래밍 컴퓨터 네트워크 Chapter 11 RPC 프로그래밍 임효택

  2. PART 03 프로그래밍 RPC 프로그래밍 • 소개 [그림 11.1] RPC 원격 절차 호출 모델

  3. PART 03 프로그래밍 RPC 프로그래밍 - RPC 클라이언트 • 클라이언트는 클라이언트 stub라고 하는 프로시져를 호출 한다. • 클라이언트 stub의 목적 • 파라미터를 모아서 필요함녀 이들을 표준화된 형식으로 바꾼 다음 하나 이상의 네트워크 메시지를 만드는 것. • 미샬링 : 클라이언트 파라미터들을 하나의 네트워크 메시지로 만드는 것. • 네트워크 메시지는 원격의 시스템으로 전송 • 연결-지향 또는 비연결 프로토콜 사용 - RPC 서버 • 서버 stub는 실제의 서버 함수를 호출하기 위해 프로시져 호출을 함으로서 네트워크 메시지에서 받은 파라미터들을 넘겨준다. • 프로시져가 끝날 때 그 결과를 서버 stub에게 반환 • 메시지는 네트워크를 따라 다시 클라이언트 stub에게 보내짐 • 클라이언트 stub는 자신의 커널로부터 네트워크 메시지를 읽음.

  4. RPC 프로그래밍 PART 03 프로그래밍 • XDR(eXternal Data Representation) - XDR 개요 • 각각의 컴퓨터 구조들은 데이터의 표현을 위해 각기 정의된 표현 방식을 사용 • XDR은 클라이언트와 서버가 교환하는 대부분의 데이터 형태에 대한 규정을 한다. • XDR 표준은 열거된 데이터 형태의 대해 어떻게 인코드 되어야 하는지 명시 • XDR을 사용하는 클라이언트와 서버는 이들이 교환하려는 메시지의 정확한 형식 에 동의해야 한다. • 데이터에 대한 필드의 형태와 정확한 형식을 모른다면 XDR 인코드된 메시지를 해석할 수 없다.

  5. RPC 프로그래밍 PART 03 프로그래밍 - SUN RPC • Sun RPC 기능은 대부분의 BSD 계열의 UNIX 운영체제에서 제공 • Sun RPC 기능은 다음과 같은 요소들로 구성 • Rpcgen 컴파일러 • XDR 기능 • 런타임 라이브러리 • Rpcgen을 사용하여 클라이언트와 서버를 만들기 위해 작성해야 하는 프로 그램을 보여준다.

  6. RPC 프로그래밍 PART 03 프로그래밍 • SUN RPC 예제 프로그램 - datetime 예제 프로그램 • 이 프로그램은 클라이언트가 RPC를 이용해 서버의 현재 시각을 알 수 있도록 하는 프로그램이다. • 프로그래머는 다음의 3개의 파일을 작성해야 한다. • 클라이언트 프로그램(rdate.c) • 서버 프로그램(date_proc.c) • RPC 명세 파일(date.x) [그림 11.4] RPC 예제 프로그램 처리과정

  7. RPC 프로그래밍 PART 03 프로그래밍 - Dictionary lookup • Rpcgen을 사용하는 예로서 간단한 데이터베이스를 구현하는 응용 • 데이터베이스는 다음과 같은 네 가지 기본적인 동작을 제공 • Initialize : 데이터베이스 초기화 • Insert : 해로운 항목 추가 • Delete : 항목 제거 • Lookup : 항목 검색 • RPC 프로그래밍을 위한 6가지 단계 • 단계 1 : 클라이언트와 서버 프로그램 작성 • 단계 2 : Rpcgen 명세(specification)를 작성 • 단계 3 : Rpcgen 실행 • 단계 4 : 클라이언트 프로그램 컴파일과 링크 • 단계 5 : 서버 프로그램의 컴파일과 링크 • 단계 6 : 서버를 구동, 클라이언트를 실행

More Related