Names, Identifiers, and Addresses
○ Name(이름)
- 임의의 실체(Entity, Object 등)에 부여
- 실체를 구분하고 원하는 대상을 찾기 위함
○ Identifier(ID, 식별자)
- 동일한 이름을 가지는 실체를 구분
- 식별자와 실체는 1:1 관계
- 동일한 식별자는 항상 동일한 실체를 가리켜야 함
○ Address(주소)
- 실체에 Access 하는 방법
- Access Point
Naming 방법
○ Flat
- Forwarding Pointer
- HBA(Home-Based Address)
- DHT(Distributed Hash Table)
- HA(Hierarchical Approach)
○ Structured
- NS(Name Space): File System, Web
○ Attribute-Based
- LDAP
Flat - Forwarding Point
▲ Object가 이동 위치마다 Pointer 생성, Chain을 따라 Object 실제 위치 추적, 단 이동이 많은 경우 체인이 너무 길어짐
▲ 체인 길어짐을 Shortcut을 이용하여 해결
- 이동이 많은 경우 Chain이 길어지는데, 불필요한 위치를 제거하여 Chain 단축
Flat - Home-based Approaches
○ Mobile IP에 응용
○ Home Agent(HA)는 Mobile Host(대상)의 현재 위치를 알고 있음
- HA는 Mobile Host가 Channel에 최초로 가입한 지점
- 홈페이스가 클라이언트에게 위치를 알려줌
○ Mobile Host에 메시지 전송, Access 하려면 HA에 Query를 보내면 됨
Flat - Distributed Hash Tables
▲ 실제 노드가 Data 또는 Object 관리
○ P2P, Blockchain에 응용
○ Hash Table상 Key는 어떤 Node를 가리킴
○ Ex. Chord 구조 DHT(교재예제)
- 짙은 원: 실제 Node, 이전 Node 이후의 Key부터 자신까지 Key값 할당
- 개별 Node는 Key값과 Node 쌍의 Finger Table 보유
- 원하는 Key가 Finger Table내 Key범위에 없을 경우 가장 큰 값 선택
- 원하는 Key가 Finger Table 내 Key 범위에 있을 경우 범위의 가장 작은 값 선택
Flat- Hierarchical Approaches (계층구조)
○ Tree형태 Domain 구조
○ 서로 다른 Domain 내 같은 Entity 존재 가능
○ Domain 관리는 Root가 관리
○ 탐색
- 찾는 Entity가 현재 Domain내에 없다면 상위 Domain으로 이동하여 탐색
- 한번 Entity를 찾으면 상위 Domain의 Root 만 방문하면 됨
Structured - Name Space
○ File System, Domain Name(인터넷)에 응용
○ Tree 형태 Directory 사용
○ Unix의 File System은 Name과 inode 속성을 가짐
- inode(index node): index node, 식별자이며 DISK 주소값을 가짐, 이름만으로도 File을 혼동할 수 있으므로 사용
○ 원격으로 Storage가 흩어져있는 경우 분산 File System(Linking and Mounting) 사용
Structured - Name Space - Linking and Mounting
- Mounting에 필요한 정보: Access Protocol, 서버 이름, Mounting 지점에 관한 외부 Name Space
Structured - Name Space - Name Space Distribution
○ DNS, Web Site에 응용
○ 사람이 이용하기 쉽도록 이름을 통해 Entity 접근
- Flat Model보다 사람이 이용하기 쉽도록 고안된 것이 Structured (naming) Model
○ DNS: 이름을 Entity의 IP 주소로 Mapping
○ 구현 시 Global Level에서는 가용성이, Manage Level에서는 성능이 중요
Implementation of Name Resolution
'컴퓨터공학 > 분산시스템' 카테고리의 다른 글
분산시스템의 일관성 및 복제(Consistency & Replication) (1) | 2023.12.20 |
---|---|
분산시스템의 동기화(synchronization) (0) | 2023.12.20 |
분산시스템의 커뮤니케이션 (1) | 2023.12.20 |
분산시스템에서의 프로세스 (1) | 2023.12.20 |
분산시스템의 구조 (ARCHITECTURES) (0) | 2023.12.20 |