@libp2p/circuit-relay-v2 2.0.3 → 2.0.4-fa83ee1c7

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,7 +2,7 @@ import { type ProtobufStream } from 'it-protobuf-stream';
2
2
  import { HopMessage, StopMessage } from '../pb/index.js';
3
3
  import { type ReservationStoreInit } from './reservation-store.js';
4
4
  import type { CircuitRelayService, RelayReservation } from '../index.js';
5
- import type { ComponentLogger, Connection, Stream, ConnectionGater, PeerId, PeerStore, PrivateKey } from '@libp2p/interface';
5
+ import type { ComponentLogger, Connection, Stream, ConnectionGater, PeerId, PeerStore, PrivateKey, Metrics } from '@libp2p/interface';
6
6
  import type { AddressManager, ConnectionManager, Registrar } from '@libp2p/interface-internal';
7
7
  export interface CircuitRelayServerInit {
8
8
  /**
@@ -50,6 +50,7 @@ export interface CircuitRelayServerComponents {
50
50
  connectionManager: ConnectionManager;
51
51
  connectionGater: ConnectionGater;
52
52
  logger: ComponentLogger;
53
+ metrics?: Metrics;
53
54
  }
54
55
  export interface RelayServerEvents {
55
56
  'relay:reservation': CustomEvent<RelayReservation>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAWlE,OAAO,EAAE,UAAU,EAA4B,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAElF,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAEpF,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,KAAK,EAAE,eAAe,EAAU,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAa,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC/I,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAsB,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAKlH,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAA;IAEnC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,UAAU,CAAA;IACnB,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;CACrB;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAA;IACtB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,eAAe,EAAE,eAAe,CAAA;IAChC,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAA;IAClD,sBAAsB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC5C,oBAAoB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;CACzC;AAqVD,wBAAgB,kBAAkB,CAAE,IAAI,GAAE,sBAA2B,GAAG,CAAC,UAAU,EAAE,4BAA4B,KAAK,mBAAmB,CAIxI"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAWlE,OAAO,EAAE,UAAU,EAA4B,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAElF,OAAO,EAAoB,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAEpF,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACxE,OAAO,KAAK,EAAE,eAAe,EAAU,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAa,UAAU,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AACxJ,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAsB,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAKlH,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAA;IAEnC;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;OAEG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAE9B;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,UAAU,CAAA;IACnB,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;CACrB;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,SAAS,CAAA;IACpB,cAAc,EAAE,cAAc,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,UAAU,CAAA;IACtB,iBAAiB,EAAE,iBAAiB,CAAA;IACpC,eAAe,EAAE,eAAe,CAAA;IAChC,MAAM,EAAE,eAAe,CAAA;IACvB,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAA;IAClD,sBAAsB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC5C,oBAAoB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;CACzC;AAqVD,wBAAgB,kBAAkB,CAAE,IAAI,GAAE,sBAA2B,GAAG,CAAC,UAAU,EAAE,4BAA4B,KAAK,mBAAmB,CAIxI"}
@@ -48,7 +48,7 @@ class CircuitRelayServer extends TypedEventEmitter {
48
48
  this.maxInboundHopStreams = init.maxInboundHopStreams;
49
49
  this.maxOutboundHopStreams = init.maxOutboundHopStreams;
50
50
  this.maxOutboundStopStreams = init.maxOutboundStopStreams ?? defaults.maxOutboundStopStreams;
51
- this.reservationStore = new ReservationStore(init.reservations);
51
+ this.reservationStore = new ReservationStore(components, init.reservations);
52
52
  this.shutdownController = new AbortController();
53
53
  setMaxListeners(Infinity, this.shutdownController.signal);
54
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
- import { PeerMap } from '@libp2p/peer-collections';
2
1
  import { type Limit, Status } from '../pb/index.js';
3
2
  import type { RelayReservation } from '../index.js';
4
- import type { PeerId, Startable } from '@libp2p/interface';
3
+ import type { Metrics, PeerId, Startable } from '@libp2p/interface';
4
+ import type { PeerMap } from '@libp2p/peer-collections';
5
5
  import type { Multiaddr } from '@multiformats/multiaddr';
6
6
  export type ReservationStatus = Status.OK | Status.PERMISSION_DENIED | Status.RESERVATION_REFUSED;
7
+ export interface ReservationStoreComponents {
8
+ metrics?: Metrics;
9
+ }
7
10
  export interface ReservationStoreInit {
8
11
  /**
9
12
  * maximum number of reservations allowed
@@ -48,7 +51,7 @@ export declare class ReservationStore implements Startable {
48
51
  private readonly reservationTtl;
49
52
  private readonly defaultDurationLimit;
50
53
  private readonly defaultDataLimit;
51
- constructor(options?: ReservationStoreInit);
54
+ constructor(components: ReservationStoreComponents, init?: ReservationStoreInit);
52
55
  isStarted(): boolean;
53
56
  start(): void;
54
57
  stop(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"reservation-store.d.ts","sourceRoot":"","sources":["../../../src/server/reservation-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAElD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAA;AAEjG,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAA;IAEjC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,qBAAa,gBAAiB,YAAW,SAAS;IAChD,SAAgB,YAAY,4BAAkC;IAC9D,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAQ;IACjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;gBAE5B,OAAO,GAAE,oBAAyB;IAS/C,SAAS,IAAK,OAAO;IAIrB,KAAK,IAAK,IAAI;IAkBd,IAAI,IAAK,IAAI;IAIb,OAAO,CAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAkBtG,iBAAiB,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAItC,cAAc,CAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAIrC,GAAG,CAAE,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;CAGjD"}
1
+ {"version":3,"file":"reservation-store.d.ts","sourceRoot":"","sources":["../../../src/server/reservation-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAA;AAEjG,MAAM,WAAW,0BAA0B;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAA;IAEjC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAE3B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,qBAAa,gBAAiB,YAAW,SAAS;IAChD,SAAgB,YAAY,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACvD,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAQ;IACjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAQ;IAC7C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAQ;gBAE5B,UAAU,EAAE,0BAA0B,EAAE,IAAI,GAAE,oBAAyB;IAcpF,SAAS,IAAK,OAAO;IAIrB,KAAK,IAAK,IAAI;IAkBd,IAAI,IAAK,IAAI;IAIb,OAAO,CAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG;QAAE,MAAM,EAAE,iBAAiB,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAkBtG,iBAAiB,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAItC,cAAc,CAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IAIrC,GAAG,CAAE,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;CAGjD"}
@@ -1,8 +1,8 @@
1
- import { PeerMap } from '@libp2p/peer-collections';
1
+ import { trackedPeerMap } from '@libp2p/peer-collections';
2
2
  import { DEFAULT_DATA_LIMIT, DEFAULT_DURATION_LIMIT, DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL, DEFAULT_MAX_RESERVATION_STORE_SIZE, DEFAULT_MAX_RESERVATION_TTL } from '../constants.js';
3
3
  import { Status } from '../pb/index.js';
4
4
  export class ReservationStore {
5
- reservations = new PeerMap();
5
+ reservations;
6
6
  _started = false;
7
7
  interval;
8
8
  maxReservations;
@@ -11,13 +11,17 @@ export class ReservationStore {
11
11
  reservationTtl;
12
12
  defaultDurationLimit;
13
13
  defaultDataLimit;
14
- constructor(options = {}) {
15
- this.maxReservations = options.maxReservations ?? DEFAULT_MAX_RESERVATION_STORE_SIZE;
16
- this.reservationClearInterval = options.reservationClearInterval ?? DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL;
17
- this.applyDefaultLimit = options.applyDefaultLimit !== false;
18
- this.reservationTtl = options.reservationTtl ?? DEFAULT_MAX_RESERVATION_TTL;
19
- this.defaultDurationLimit = options.defaultDurationLimit ?? DEFAULT_DURATION_LIMIT;
20
- this.defaultDataLimit = options.defaultDataLimit ?? DEFAULT_DATA_LIMIT;
14
+ constructor(components, init = {}) {
15
+ this.maxReservations = init.maxReservations ?? DEFAULT_MAX_RESERVATION_STORE_SIZE;
16
+ this.reservationClearInterval = init.reservationClearInterval ?? DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL;
17
+ this.applyDefaultLimit = init.applyDefaultLimit !== false;
18
+ this.reservationTtl = init.reservationTtl ?? DEFAULT_MAX_RESERVATION_TTL;
19
+ this.defaultDurationLimit = init.defaultDurationLimit ?? DEFAULT_DURATION_LIMIT;
20
+ this.defaultDataLimit = init.defaultDataLimit ?? DEFAULT_DATA_LIMIT;
21
+ this.reservations = trackedPeerMap({
22
+ metrics: components.metrics,
23
+ name: 'libp2p_circuit_relay_server_reservations_total'
24
+ });
21
25
  }
22
26
  isStarted() {
23
27
  return this._started;
@@ -1 +1 @@
1
- {"version":3,"file":"reservation-store.js","sourceRoot":"","sources":["../../../src/server/reservation-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,sCAAsC,EAAE,kCAAkC,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AACrL,OAAO,EAAc,MAAM,EAAE,MAAM,gBAAgB,CAAA;AA+CnD,MAAM,OAAO,gBAAgB;IACX,YAAY,GAAG,IAAI,OAAO,EAAoB,CAAA;IACtD,QAAQ,GAAG,KAAK,CAAA;IAChB,QAAQ,CAAK;IACJ,eAAe,CAAQ;IACvB,wBAAwB,CAAQ;IAChC,iBAAiB,CAAS;IAC1B,cAAc,CAAQ;IACtB,oBAAoB,CAAQ;IAC5B,gBAAgB,CAAQ;IAEzC,YAAa,UAAgC,EAAE;QAC7C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,kCAAkC,CAAA;QACpF,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,IAAI,sCAAsC,CAAA;QAC1G,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,KAAK,KAAK,CAAA;QAC5D,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,2BAA2B,CAAA;QAC3E,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,IAAI,sBAAsB,CAAA;QAClF,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,kBAAkB,CAAA;IACxE,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAM;QACR,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,IAAI,CAAC,QAAQ,GAAG,WAAW,CACzB,GAAG,EAAE;YACH,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAA;YAClC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC;oBAC7B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;gBAC7B,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,EACD,IAAI,CAAC,wBAAwB,CAC9B,CAAA;IACH,CAAC;IAED,IAAI;QACF,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC9B,CAAC;IAED,OAAO,CAAE,IAAY,EAAE,IAAe,EAAE,KAAa;QACnD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnF,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,CAAA;QAC/C,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,CAAA;QACzD,IAAI,YAA+B,CAAA;QAEnC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,YAAY,GAAG,KAAK,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAA;QAC9F,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAA;QAElE,gCAAgC;QAChC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;IAC3E,CAAC;IAED,iBAAiB,CAAE,IAAY;QAC7B,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,cAAc,CAAE,GAAW;QACzB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAED,GAAG,CAAE,IAAY;QACf,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;CACF"}
1
+ {"version":3,"file":"reservation-store.js","sourceRoot":"","sources":["../../../src/server/reservation-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/circuit-relay-v2",
3
- "version": "2.0.3",
3
+ "version": "2.0.4-fa83ee1c7",
4
4
  "description": "Implementation of Circuit Relay v2",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/transport-circuit-relay-v2#readme",
@@ -52,12 +52,12 @@
52
52
  "doc-check": "aegir doc-check"
53
53
  },
54
54
  "dependencies": {
55
- "@libp2p/interface": "^2.1.1",
56
- "@libp2p/interface-internal": "^2.0.3",
57
- "@libp2p/peer-collections": "^6.0.3",
58
- "@libp2p/peer-id": "^5.0.3",
59
- "@libp2p/peer-record": "^8.0.3",
60
- "@libp2p/utils": "^6.0.3",
55
+ "@libp2p/interface": "2.1.2-fa83ee1c7",
56
+ "@libp2p/interface-internal": "2.0.4-fa83ee1c7",
57
+ "@libp2p/peer-collections": "6.0.4-fa83ee1c7",
58
+ "@libp2p/peer-id": "5.0.4-fa83ee1c7",
59
+ "@libp2p/peer-record": "8.0.4-fa83ee1c7",
60
+ "@libp2p/utils": "6.0.4-fa83ee1c7",
61
61
  "@multiformats/mafmt": "^12.1.6",
62
62
  "@multiformats/multiaddr": "^12.2.3",
63
63
  "any-signal": "^4.1.1",
@@ -72,10 +72,13 @@
72
72
  "uint8arrays": "^5.1.0"
73
73
  },
74
74
  "devDependencies": {
75
- "@libp2p/interface-compliance-tests": "^6.1.1",
75
+ "@libp2p/crypto": "5.0.4-fa83ee1c7",
76
+ "@libp2p/interface-compliance-tests": "6.1.2-fa83ee1c7",
77
+ "@libp2p/logger": "5.0.4-fa83ee1c7",
76
78
  "aegir": "^44.0.1",
77
79
  "delay": "^6.0.0",
78
80
  "it-drain": "^3.0.7",
81
+ "it-pair": "^2.0.6",
79
82
  "it-pushable": "^3.2.3",
80
83
  "it-to-buffer": "^4.0.7",
81
84
  "p-wait-for": "^5.0.2",
@@ -18,7 +18,7 @@ import { createLimitedRelay } from '../utils.js'
18
18
  import { ReservationStore, type ReservationStoreInit } from './reservation-store.js'
19
19
  import { ReservationVoucherRecord } from './reservation-voucher.js'
20
20
  import type { CircuitRelayService, RelayReservation } from '../index.js'
21
- import type { ComponentLogger, Logger, Connection, Stream, ConnectionGater, PeerId, PeerStore, Startable, PrivateKey } from '@libp2p/interface'
21
+ import type { ComponentLogger, Logger, Connection, Stream, ConnectionGater, PeerId, PeerStore, Startable, PrivateKey, Metrics } from '@libp2p/interface'
22
22
  import type { AddressManager, ConnectionManager, IncomingStreamData, Registrar } from '@libp2p/interface-internal'
23
23
  import type { PeerMap } from '@libp2p/peer-collections'
24
24
 
@@ -77,6 +77,7 @@ export interface CircuitRelayServerComponents {
77
77
  connectionManager: ConnectionManager
78
78
  connectionGater: ConnectionGater
79
79
  logger: ComponentLogger
80
+ metrics?: Metrics
80
81
  }
81
82
 
82
83
  export interface RelayServerEvents {
@@ -125,7 +126,7 @@ class CircuitRelayServer extends TypedEventEmitter<RelayServerEvents> implements
125
126
  this.maxInboundHopStreams = init.maxInboundHopStreams
126
127
  this.maxOutboundHopStreams = init.maxOutboundHopStreams
127
128
  this.maxOutboundStopStreams = init.maxOutboundStopStreams ?? defaults.maxOutboundStopStreams
128
- this.reservationStore = new ReservationStore(init.reservations)
129
+ this.reservationStore = new ReservationStore(components, init.reservations)
129
130
 
130
131
  this.shutdownController = new AbortController()
131
132
  setMaxListeners(Infinity, this.shutdownController.signal)
@@ -1,12 +1,17 @@
1
- import { PeerMap } from '@libp2p/peer-collections'
1
+ import { trackedPeerMap } from '@libp2p/peer-collections'
2
2
  import { DEFAULT_DATA_LIMIT, DEFAULT_DURATION_LIMIT, DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL, DEFAULT_MAX_RESERVATION_STORE_SIZE, DEFAULT_MAX_RESERVATION_TTL } from '../constants.js'
3
3
  import { type Limit, Status } from '../pb/index.js'
4
4
  import type { RelayReservation } from '../index.js'
5
- import type { PeerId, Startable } from '@libp2p/interface'
5
+ import type { Metrics, PeerId, Startable } from '@libp2p/interface'
6
+ import type { PeerMap } from '@libp2p/peer-collections'
6
7
  import type { Multiaddr } from '@multiformats/multiaddr'
7
8
 
8
9
  export type ReservationStatus = Status.OK | Status.PERMISSION_DENIED | Status.RESERVATION_REFUSED
9
10
 
11
+ export interface ReservationStoreComponents {
12
+ metrics?: Metrics
13
+ }
14
+
10
15
  export interface ReservationStoreInit {
11
16
  /**
12
17
  * maximum number of reservations allowed
@@ -48,7 +53,7 @@ export interface ReservationStoreInit {
48
53
  }
49
54
 
50
55
  export class ReservationStore implements Startable {
51
- public readonly reservations = new PeerMap<RelayReservation>()
56
+ public readonly reservations: PeerMap<RelayReservation>
52
57
  private _started = false
53
58
  private interval: any
54
59
  private readonly maxReservations: number
@@ -58,13 +63,18 @@ export class ReservationStore implements Startable {
58
63
  private readonly defaultDurationLimit: number
59
64
  private readonly defaultDataLimit: bigint
60
65
 
61
- constructor (options: ReservationStoreInit = {}) {
62
- this.maxReservations = options.maxReservations ?? DEFAULT_MAX_RESERVATION_STORE_SIZE
63
- this.reservationClearInterval = options.reservationClearInterval ?? DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL
64
- this.applyDefaultLimit = options.applyDefaultLimit !== false
65
- this.reservationTtl = options.reservationTtl ?? DEFAULT_MAX_RESERVATION_TTL
66
- this.defaultDurationLimit = options.defaultDurationLimit ?? DEFAULT_DURATION_LIMIT
67
- this.defaultDataLimit = options.defaultDataLimit ?? DEFAULT_DATA_LIMIT
66
+ constructor (components: ReservationStoreComponents, init: ReservationStoreInit = {}) {
67
+ this.maxReservations = init.maxReservations ?? DEFAULT_MAX_RESERVATION_STORE_SIZE
68
+ this.reservationClearInterval = init.reservationClearInterval ?? DEFAULT_MAX_RESERVATION_CLEAR_INTERVAL
69
+ this.applyDefaultLimit = init.applyDefaultLimit !== false
70
+ this.reservationTtl = init.reservationTtl ?? DEFAULT_MAX_RESERVATION_TTL
71
+ this.defaultDurationLimit = init.defaultDurationLimit ?? DEFAULT_DURATION_LIMIT
72
+ this.defaultDataLimit = init.defaultDataLimit ?? DEFAULT_DATA_LIMIT
73
+
74
+ this.reservations = trackedPeerMap<RelayReservation>({
75
+ metrics: components.metrics,
76
+ name: 'libp2p_circuit_relay_server_reservations_total'
77
+ })
68
78
  }
69
79
 
70
80
  isStarted (): boolean {
@@ -1,23 +0,0 @@
1
- {
2
- "codec": "https://libp2p.github.io/js-libp2p/functions/_libp2p_circuit_relay_v2.Limit.codec.html",
3
- "decode": "https://libp2p.github.io/js-libp2p/functions/_libp2p_circuit_relay_v2.Limit.decode.html",
4
- "encode": "https://libp2p.github.io/js-libp2p/functions/_libp2p_circuit_relay_v2.Limit.encode.html",
5
- "CircuitRelayServerComponents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayServerComponents.html",
6
- "CircuitRelayServerInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayServerInit.html",
7
- "CircuitRelayService": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayService.html",
8
- ".:CircuitRelayService": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayService.html",
9
- "CircuitRelayServiceEvents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayServiceEvents.html",
10
- ".:CircuitRelayServiceEvents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayServiceEvents.html",
11
- "CircuitRelayTransportComponents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayTransportComponents.html",
12
- "CircuitRelayTransportInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.CircuitRelayTransportInit.html",
13
- "Limit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.Limit-1.html",
14
- "RelayDiscoveryComponents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.RelayDiscoveryComponents.html",
15
- "RelayReservation": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.RelayReservation.html",
16
- ".:RelayReservation": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.RelayReservation.html",
17
- "RelayStoreInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.RelayStoreInit.html",
18
- "ReservationStoreInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_circuit_relay_v2.ReservationStoreInit.html",
19
- "RELAY_V2_HOP_CODEC": "https://libp2p.github.io/js-libp2p/variables/_libp2p_circuit_relay_v2.RELAY_V2_HOP_CODEC.html",
20
- "RELAY_V2_STOP_CODEC": "https://libp2p.github.io/js-libp2p/variables/_libp2p_circuit_relay_v2.RELAY_V2_STOP_CODEC.html",
21
- "circuitRelayServer": "https://libp2p.github.io/js-libp2p/functions/_libp2p_circuit_relay_v2.circuitRelayServer.html",
22
- "circuitRelayTransport": "https://libp2p.github.io/js-libp2p/functions/_libp2p_circuit_relay_v2.circuitRelayTransport.html"
23
- }