2010-05-23 3 views
1

Linux 커널 (CONFIG_TIPC xconfig 매개 변수)과 함께 제공되는 TIPC 네트워킹 프로토콜을 사용하려면 어떻게 프로그래밍해야합니까?Linux의 TIPC 네트워킹 프로토콜

TIPC를 사용하는 응용 프로그램이 있습니까?

+0

https://sourceforge.net/projects/tipc/ – osgx

답변

0

TIPC가 무엇인지 전혀 몰랐지만 "AF_TIPC 주소 패밀리의 소켓"으로 액세스 할 수 있다는 표시를 봤습니다. 이 경우

, 당신은 다른 소켓 타입과 마찬가지로 일반 소켓 메커니즘을 통해 액세스 할 수 있어야합니다 :

struct sockaddr_in Foo; 
    ... 
    memset(&Foo, 0, sizeof(Foo));  // Init address struct. 
    Foo.sin_family = AF_TIPC;   // Instead of the usual AF_INET 
    etc. 

문서 (즉 예 포함) there입니다. 그리고 문서에는 TIPC에도 "기본"API가 있다고 언급되어 있습니다.

1

TIPC 높은 가용성 컴퓨터 클러스터에서 통신을위한 것이다. 주부는 주거지보다는 서비스에 초점을 맞추고 있습니다. 또한 TIPC는 중복성을 위해 여러 "베어러"를 사용할 수 있으며 링크 및 프로세서 감독 기능을 제공합니다.

컴퓨터 클러스터로 작업하는 경우가 아니면 TIPC를 사용하지 않아야합니다.

TIPC는 표준 소켓 인터페이스를 사용합니다. 프로세서간에 TIPC를 사용하려면 클러스터의 프로세서를 구성해야합니다.

TIPC를 사용하는 하나의 응용 프로그램은 "Open SAF"http://www.opensaf.org/입니다. 놀랍게도 고 가용성 클러스터 인 sw.

+0

내가 클러스터 작업을 수행합니다, 당신은 다음과 같은 필드를 포함하는 "구조체 sockaddr_tipc"를 사용한다 TIPC 프로토콜 유형을 사용

. – osgx

1

TIPC를 평가하는 동안 (나는 이것도 처음 사용합니다), 몇 가지 우수한 데모 사례를 발견했습니다 here. 누군가 유용 할 수도 있습니다.

1

TIPC은 "투명한 프로세스 간 통신"의 약자입니다.

사용하기 전에 Linux 커널 버전을 확인하여 시스템에서 사용하도록 설정해야합니다 (어쨌든 추가 할 수 있음).

기본적으로 Linux에서 두 개 이상의 프로세스/스레드 사이에서 통신하려면 TIPC를 사용해야합니다 (IP 레이어 나 다른 레이어가 필요한 경우 TIPC가 가장 좋은 옵션인지 잘 모르겠습니다).).

.family = AF_TIPC; 

.addrtype = TIPC_ADDR_NAMESEQ; (or …_MCAST, … _NAME,… _ID) 

.scope = TIPC_ZONE_SCOPE; (or …CLUSTER…, …NODE…) 

.addr.nameseq.type = TIPC_APP_TYPE_ANY_NUMBER_IS_GOOD; 

.addr.nameseq.lower = 1; 

.addr.nameseq.upper = 1024;