[Narrowing the gap] - Shredder Design ~ 2. Storage Function Layer 까지
Shredder Design
아래서부터 보니까 NIC -> Kernel By Pass (Network Layer) -> Storage Function Layer -> Storage Layer 이렇게 되고
NIC -> Kernel-Bypass -> Function Layer 가 V8로 되어있네 ->
각각의 모든 CPU는 위의 3가지 Layer를 다 쓰지만 서로 shared-nothing deisgn이라서 contention을 없애준다.
다른 문장은 다 쉬운데 마지막 문장이 조금 헷갈린다.
Each V8 runtime has a set of embedded trusted access methods to avoid expensive calls between the function runtime and the storage layer
Granularity ?
V8 은 single instance thread at a time 인가 보다. Give each tenant its own hardware-virtualized access access to the network card. However, even data center network interface card typically.
각각의 tenant에게 hardware-virtualized access to the network card를 준다. 그래서 Shredder’s separated network layer takes care multiplexing these resources
어쩃든 NIC Card는 100개의 Function만 지원이 되나 보다 이 부분도 찾아보자. 그래서 여러 개의 분리된 separated network layer를 말하나 보다.
The instance of the V8 runtime per-core.
V8 Interface의 특징을 알고 있으면 될 거 같은데
이걸 활용해서 seperation을 하는 거 같다.
Storage의 ownership과 Storage Function Layer의 get을 sync 하는거 같다. 좀더 봐봐야겠다.