diff --git a/connect/utils_test.go b/connect/utils_test.go
index 3aab375cca15e1385a2fa7c621751a0ab508d0cf..9e38793d8423a74299197d8e3a43d00180df20ab 100644
--- a/connect/utils_test.go
+++ b/connect/utils_test.go
@@ -180,21 +180,22 @@ func (m *mockCmix) GetIdentity(*id.ID) (identity.TrackedID, error) {
 	return identity.TrackedID{Creation: netTime.Now().Add(-time.Minute)}, nil
 }
 
-func (m *mockCmix) AddFingerprint(*id.ID, format.Fingerprint, message.Processor) error { return nil }
-func (m *mockCmix) DeleteFingerprint(*id.ID, format.Fingerprint)                       {}
-func (m *mockCmix) DeleteClientFingerprints(*id.ID)                                    {}
-func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor)              {}
-func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor)           {}
-func (m *mockCmix) DeleteClientService(*id.ID)                                         {}
-func (m *mockCmix) TrackServices(message.ServicesTracker)                              {}
-func (m *mockCmix) CheckInProgressMessages()                                           {}
-func (m *mockCmix) IsHealthy() bool                                                    { return true }
-func (m *mockCmix) WasHealthy() bool                                                   { return true }
-func (m *mockCmix) AddHealthCallback(func(bool)) uint64                                { return 0 }
-func (m *mockCmix) RemoveHealthCallback(uint64)                                        {}
-func (m *mockCmix) HasNode(*id.ID) bool                                                { return true }
-func (m *mockCmix) NumRegisteredNodes() int                                            { return 24 }
-func (m *mockCmix) TriggerNodeRegistration(*id.ID)                                     {}
+func (m *mockCmix) AddFingerprint(*id.ID, format.Fingerprint, message.Processor) error       { return nil }
+func (m *mockCmix) DeleteFingerprint(*id.ID, format.Fingerprint)                             {}
+func (m *mockCmix) DeleteClientFingerprints(*id.ID)                                          {}
+func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor)                    {}
+func (m *mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {return nil}
+func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor)                 {}
+func (m *mockCmix) DeleteClientService(*id.ID)                                               {}
+func (m *mockCmix) TrackServices(message.ServicesTracker)                                    {}
+func (m *mockCmix) CheckInProgressMessages()                                                 {}
+func (m *mockCmix) IsHealthy() bool                                                          { return true }
+func (m *mockCmix) WasHealthy() bool                                                         { return true }
+func (m *mockCmix) AddHealthCallback(func(bool)) uint64                                      { return 0 }
+func (m *mockCmix) RemoveHealthCallback(uint64)                                              {}
+func (m *mockCmix) HasNode(*id.ID) bool                                                      { return true }
+func (m *mockCmix) NumRegisteredNodes() int                                                  { return 24 }
+func (m *mockCmix) TriggerNodeRegistration(*id.ID)                                           {}
 
 func (m *mockCmix) GetRoundResults(_ time.Duration, roundCallback cmix.RoundEventCallback, _ ...id.Round) {
 	roundCallback(true, false, nil)
diff --git a/dummy/mockCmix_test.go b/dummy/mockCmix_test.go
index 75cdee581be7e2b08de783f8e27d9d58de078093..60e7de512b840412d9290fdf0cde190f88cf3d74 100644
--- a/dummy/mockCmix_test.go
+++ b/dummy/mockCmix_test.go
@@ -126,6 +126,12 @@ func (m mockCmix) AddService(clientID *id.ID, newService message.Service, respon
 	panic("implement me")
 }
 
+func (m mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	//TODO implement me
+	panic("implement me")
+}
+
+
 func (m mockCmix) DeleteService(clientID *id.ID, toDelete message.Service, processor message.Processor) {
 	//TODO implement me
 	panic("implement me")
diff --git a/e2e/fpGenerator_test.go b/e2e/fpGenerator_test.go
index 657fc16462548659dcd8e409c5acb6da928ffeef..adb178e669a8ca94c79bae2909d009530e6f168d 100644
--- a/e2e/fpGenerator_test.go
+++ b/e2e/fpGenerator_test.go
@@ -159,8 +159,11 @@ func (m *mockFpgCmix) DeleteFingerprint(uid *id.ID, fp format.Fingerprint) {
 	}
 }
 
-func (m *mockFpgCmix) DeleteClientFingerprints(*id.ID)                          {}
-func (m *mockFpgCmix) AddService(*id.ID, message.Service, message.Processor)    {}
+func (m *mockFpgCmix) DeleteClientFingerprints(*id.ID)                       {}
+func (m *mockFpgCmix) AddService(*id.ID, message.Service, message.Processor) {}
+func (m *mockFpgCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	return nil
+}
 func (m *mockFpgCmix) DeleteService(*id.ID, message.Service, message.Processor) {}
 func (m *mockFpgCmix) DeleteClientService(*id.ID)                               {}
 func (m *mockFpgCmix) TrackServices(message.ServicesTracker)                    {}
diff --git a/e2e/rekey/utils_test.go b/e2e/rekey/utils_test.go
index aeccacbe316832b436901c654981a6d6fc1138e5..58512b33aa0dc41c9a17f0ab22605c5002e2d013 100644
--- a/e2e/rekey/utils_test.go
+++ b/e2e/rekey/utils_test.go
@@ -222,7 +222,7 @@ func (m mockServiceHandler) DeleteService(clientID *id.ID, toDelete message.Serv
 type mockNetManager struct{}
 
 func (m *mockNetManager) GetIdentity(get *id.ID) (identity.TrackedID, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
@@ -270,6 +270,11 @@ func (m *mockNetManager) AddService(clientID *id.ID, newService message.Service,
 	response message.Processor) {
 }
 
+func (m *mockNetManager) IncreaseParallelNodeRegistration(
+	int) func() (stoppable.Stoppable, error) {
+	return nil
+}
+
 func (m *mockNetManager) DeleteService(clientID *id.ID, toDelete message.Service,
 	processor message.Processor) {
 }
diff --git a/e2e/utils_test.go b/e2e/utils_test.go
index 78a0eaa7c57a7cd0520f42c260e3968fdbf6ff6a..8ba510fe0e66471878310440ca0de0da7980fdeb 100644
--- a/e2e/utils_test.go
+++ b/e2e/utils_test.go
@@ -239,7 +239,9 @@ func (m *mockCmix) AddService(myId *id.ID, srv message.Service, proc message.Pro
 	m.handler.Unlock()
 
 }
-
+func (m *mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	return nil
+}
 func (m *mockCmix) DeleteClientFingerprints(*id.ID)                          {}
 func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor) {}
 func (m *mockCmix) DeleteClientService(*id.ID)                               {}
diff --git a/fileTransfer/connect/utils_test.go b/fileTransfer/connect/utils_test.go
index b707e548ec2bbe96d43b9d7d3fa6f19205bee424..14707813e1a1a2361171b1c6a9412cd4dee8b57e 100644
--- a/fileTransfer/connect/utils_test.go
+++ b/fileTransfer/connect/utils_test.go
@@ -158,8 +158,11 @@ func (m *mockCmix) DeleteFingerprint(_ *id.ID, fp format.Fingerprint) {
 	m.handler.Unlock()
 }
 
-func (m *mockCmix) DeleteClientFingerprints(*id.ID)                          { panic("implement me") }
-func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor)    { panic("implement me") }
+func (m *mockCmix) DeleteClientFingerprints(*id.ID)                       { panic("implement me") }
+func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor) { panic("implement me") }
+func (m *mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	panic("implement me")
+}
 func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor) { panic("implement me") }
 func (m *mockCmix) DeleteClientService(*id.ID)                               { panic("implement me") }
 func (m *mockCmix) TrackServices(message.ServicesTracker)                    { panic("implement me") }
diff --git a/fileTransfer/e2e/utils_test.go b/fileTransfer/e2e/utils_test.go
index a7f50a19525cd2360dfb698fbca8281f2572d520..b77985aed45ac7dd36fa600a3684f41aac98a0ae 100644
--- a/fileTransfer/e2e/utils_test.go
+++ b/fileTransfer/e2e/utils_test.go
@@ -160,8 +160,11 @@ func (m *mockCmix) DeleteFingerprint(_ *id.ID, fp format.Fingerprint) {
 	m.handler.Unlock()
 }
 
-func (m *mockCmix) DeleteClientFingerprints(*id.ID)                          { panic("implement me") }
-func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor)    { panic("implement me") }
+func (m *mockCmix) DeleteClientFingerprints(*id.ID)                       { panic("implement me") }
+func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor) { panic("implement me") }
+func (m *mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	panic("implement me")
+}
 func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor) { panic("implement me") }
 func (m *mockCmix) DeleteClientService(*id.ID)                               { panic("implement me") }
 func (m *mockCmix) TrackServices(message.ServicesTracker)                    { panic("implement me") }
diff --git a/fileTransfer/groupChat/utils_test.go b/fileTransfer/groupChat/utils_test.go
index a616d65c19783c0bfd9789fb0e3399a61a253656..4475c6a0d45de084a214f73210681b9346132899 100644
--- a/fileTransfer/groupChat/utils_test.go
+++ b/fileTransfer/groupChat/utils_test.go
@@ -157,6 +157,7 @@ func (m *mockCmix) DeleteFingerprint(_ *id.ID, fp format.Fingerprint) {
 
 func (m *mockCmix) DeleteClientFingerprints(*id.ID)                          { panic("implement me") }
 func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor)    { panic("implement me") }
+func (m *mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {panic("implement me")}
 func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor) { panic("implement me") }
 func (m *mockCmix) DeleteClientService(*id.ID)                               { panic("implement me") }
 func (m *mockCmix) TrackServices(message.ServicesTracker)                    { panic("implement me") }
diff --git a/fileTransfer/utils_test.go b/fileTransfer/utils_test.go
index daba7a06489ec8dac51f9a016d304f779ae94ec8..3c884076acf535232f8f4da54a59ac1cc7b4ec5e 100644
--- a/fileTransfer/utils_test.go
+++ b/fileTransfer/utils_test.go
@@ -211,8 +211,11 @@ func (m *mockCmix) DeleteFingerprint(_ *id.ID, fp format.Fingerprint) {
 	delete(m.handler.processorMap, fp)
 }
 
-func (m *mockCmix) DeleteClientFingerprints(*id.ID)                          { panic("implement me") }
-func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor)    { panic("implement me") }
+func (m *mockCmix) DeleteClientFingerprints(*id.ID)                       { panic("implement me") }
+func (m *mockCmix) AddService(*id.ID, message.Service, message.Processor) { panic("implement me") }
+func (m *mockCmix) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	return nil
+}
 func (m *mockCmix) DeleteService(*id.ID, message.Service, message.Processor) { panic("implement me") }
 func (m *mockCmix) DeleteClientService(*id.ID)                               { panic("implement me") }
 func (m *mockCmix) TrackServices(message.ServicesTracker)                    { panic("implement me") }
diff --git a/groupChat/networkManager_test.go b/groupChat/networkManager_test.go
index 934744be0b08341ba95cc8e4e4af25bbcb5bae0d..2cdd1a28a596b8646032417c17d8a5722d3bee94 100644
--- a/groupChat/networkManager_test.go
+++ b/groupChat/networkManager_test.go
@@ -66,7 +66,10 @@ func (tnm *testNetworkManager) SendMany(messages []cmix.TargetedCmixMessage, _ c
 	return rounds.Round{}, nil, nil
 }
 
-func (*testNetworkManager) AddService(*id.ID, message.Service, message.Processor)    {}
+func (*testNetworkManager) AddService(*id.ID, message.Service, message.Processor) {}
+func (*testNetworkManager) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	return nil
+}
 func (*testNetworkManager) DeleteService(*id.ID, message.Service, message.Processor) {}
 
 /////////////////////////////////////////////////////////////////////////////////////
@@ -74,159 +77,159 @@ func (*testNetworkManager) DeleteService(*id.ID, message.Service, message.Proces
 /////////////////////////////////////////////////////////////////////////////////////
 
 func (tnm *testNetworkManager) Follow(report cmix.ClientErrorReport) (stoppable.Stoppable, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) SendWithAssembler(recipient *id.ID,
 	assembler cmix.MessageAssembler, cmixParams cmix.CMIXParams) (rounds.Round,
 	ephemeral.Id, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) Send(recipient *id.ID, fingerprint format.Fingerprint, service message.Service, payload, mac []byte, cmixParams cmix.CMIXParams) (rounds.Round, ephemeral.Id, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) AddIdentity(id *id.ID, validUntil time.Time, persistent bool) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) AddIdentityWithHistory(id *id.ID, validUntil, beginning time.Time, persistent bool) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) RemoveIdentity(id *id.ID) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) GetIdentity(get *id.ID) (identity.TrackedID, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) AddFingerprint(identity *id.ID, fingerprint format.Fingerprint, mp message.Processor) error {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) DeleteFingerprint(identity *id.ID, fingerprint format.Fingerprint) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) DeleteClientFingerprints(identity *id.ID) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) DeleteClientService(clientID *id.ID) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) TrackServices(tracker message.ServicesTracker) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) CheckInProgressMessages() {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) IsHealthy() bool {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) WasHealthy() bool {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) AddHealthCallback(f func(bool)) uint64 {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) RemoveHealthCallback(u uint64) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) HasNode(nid *id.ID) bool {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) NumRegisteredNodes() int {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) TriggerNodeRegistration(nid *id.ID) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) GetRoundResults(timeout time.Duration, roundCallback cmix.RoundEventCallback, roundList ...id.Round) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) LookupHistoricalRound(rid id.Round, callback rounds.RoundResultCallback) error {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) SendToAny(sendFunc func(host *connect.Host) (interface{}, error), stop *stoppable.Single) (interface{}, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) SendToPreferred(targets []*id.ID, sendFunc gateway.SendToPreferredFunc, stop *stoppable.Single, timeout time.Duration) (interface{}, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) SetGatewayFilter(f gateway.Filter) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) GetHostParams() connect.HostParams {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) GetAddressSpace() uint8 {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) RegisterAddressSpaceNotification(tag string) (chan uint8, error) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) UnregisterAddressSpaceNotification(tag string) {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) GetInstance() *network.Instance {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
 func (tnm *testNetworkManager) GetVerboseRounds() string {
-	//TODO implement me
+	// TODO implement me
 	panic("implement me")
 }
 
diff --git a/ud/networkManager_test.go b/ud/networkManager_test.go
index e58b3cf1fe3ef539e4c19bcb8ca2f95e24a15901..9cb6866c512b86b33dd9b9b4b8af0a1172d87389 100644
--- a/ud/networkManager_test.go
+++ b/ud/networkManager_test.go
@@ -115,6 +115,8 @@ func (tnm *testNetworkManager) AddService(clientID *id.ID,
 	return
 }
 
+func (tnm *testNetworkManager) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {return nil}
+
 func (tnm *testNetworkManager) CheckInProgressMessages() {
 	return
 }
diff --git a/xxdk/utilsInterfaces_test.go b/xxdk/utilsInterfaces_test.go
index a6be0ca8d7143ed748efe04058930a47392aa08c..da4afd17210ebad04a2908f783375af35a513331 100644
--- a/xxdk/utilsInterfaces_test.go
+++ b/xxdk/utilsInterfaces_test.go
@@ -168,6 +168,10 @@ func (t *testNetworkManagerGeneric) RemoveIdentity(id *id.ID) {}
 func (t *testNetworkManagerGeneric) AddService(clientID *id.ID,
 	newService message.Service, response message.Processor) {
 }
+func (t *testNetworkManagerGeneric) IncreaseParallelNodeRegistration(int) func() (stoppable.Stoppable, error) {
+	return nil
+}
+
 func (t *testNetworkManagerGeneric) DeleteService(clientID *id.ID,
 	toDelete message.Service, processor message.Processor) {
 }